Size: a a a

IT KPI C/C++ ХВ (не UB)

2020 November 23

AW

Alexander Wizaral in IT KPI C/C++ ХВ (не UB)
Бекзод
#include <iostream>
#include <string>
using namespace std;

template<typename T>
class List
{
public:
   List();
   ~List();

   void pop_front();
   void push_back(T data);
   void clear();
   int GetSize() { return Size; }
   T& operator[](const int index);

private:
   template<typename T>
   class Node
   {
   public:
       Node* pNext;
       T data;

       Node(T data = T(), Node* pNext = nullptr)
       {
           this->data = data;
           this->pNext = pNext;
       }
   };
   int Size;
   Node<T>* head;
};

template<typename T>
List<T>::~List()
{
   Size = 0;
   head = nullptr;
}


template<typename T>
void List<T>::pop_front()
{
   Node<T>* temp = head;
   head = head->pNext;
   delete temp;
   Size--;
}

template<typename T>
void List<T>::push_back(T data)
{
   if (head == nullptr)
       head = new Node<T>(data);
   else
   {
       Node<T>* current = this->head;
       while (current->pNext != nullptr)
       {
           current = current->pNext;
       }
       current->pNext = new Node<T>(data);
   }
   Size++;
}

template<typename T>
void List<T>::clear()
{
   while (Size)
   {
       pop_front();
   }
}

template<typename T>
T & List<T>::operator[](const int index)
{
   int counter = 0;
   Node<T> *current = this->head;
   while (current != nullptr)
   {
       if (counter == index)
       {
           return current->data;
       }
       current = current->pNext;
       counter++;
   }
}

int main()
{
   List<int> lst;
   lst.push_back(55);
   lst.push_back(11);
   lst.push_back(2);

   for (int i = 0; i < lst.GetSize(); i++)
   {
       cout << lst[i] << endl;
   }
   cout << endl << "Rohatdagi elementlar " << lst.GetSize() << endl << "clear metodi ishga tushdi \n\n";
 
   lst.clear();
   cout << "\n Royhat elementlari" << lst.GetSize() << endl;

   return 0;
}
/voteban@blcklstbot
источник

AW

Alexander Wizaral in IT KPI C/C++ ХВ (не UB)
)
источник

S

Shadow Mortician in IT KPI C/C++ ХВ (не UB)
Alexander Wizaral
/voteban@blcklstbot
не перегибай
источник

TL

Tony Lutsenko in IT KPI C/C++ ХВ (не UB)
Alexander Wizaral
к слову, его резонно сделать структурой, т.к. его видно только классу List
Это какое-то правило или стиль?
источник

AW

Alexander Wizaral in IT KPI C/C++ ХВ (не UB)
Tony Lutsenko
Это какое-то правило или стиль?
struct A {};
тоже самое, что и
class B {public:};
источник

TL

Tony Lutsenko in IT KPI C/C++ ХВ (не UB)
Alexander Wizaral
struct A {};
тоже самое, что и
class B {public:};
Да
источник

G

GNU/Vsevolod in IT KPI C/C++ ХВ (не UB)
Є якийсь 100% метод виявляти, що юзер скинув (довгий) код? Якщо так, можу зробити щоб бот видаляв мсг і реплаїв *біном
источник

AW

Alexander Wizaral in IT KPI C/C++ ХВ (не UB)
обычно так делают, если класс в классе в приватной секции
источник

TL

Tony Lutsenko in IT KPI C/C++ ХВ (не UB)
GNU/Vsevolod
Є якийсь 100% метод виявляти, що юзер скинув (довгий) код? Якщо так, можу зробити щоб бот видаляв мсг і реплаїв *біном
Зачем? Я специально оформляю хорошо в сообщении
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
бін это бан на украинском?
источник

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Тогда да, полезно
источник

G

GNU/Vsevolod in IT KPI C/C++ ХВ (не UB)
Julian =) Coffee
бін это бан на украинском?
paste/haste/etc bin
источник

AW

Alexander Wizaral in IT KPI C/C++ ХВ (не UB)
GNU/Vsevolod
Є якийсь 100% метод виявляти, що юзер скинув (довгий) код? Якщо так, можу зробити щоб бот видаляв мсг і реплаїв *біном
ключевые слова, оформление текста
источник

TL

Tony Lutsenko in IT KPI C/C++ ХВ (не UB)
Julian =) Coffee
бін это бан на украинском?
Гродно
источник

G

GNU/Vsevolod in IT KPI C/C++ ХВ (не UB)
Tony Lutsenko
Зачем? Я специально оформляю хорошо в сообщении
тг не дуже підходить для великих шматків сирців, навіть з моноширинним форматом
источник

G

GNU/Vsevolod in IT KPI C/C++ ХВ (не UB)
Alexander Wizaral
ключевые слова, оформление текста
У різних мов вони дуже різні
источник

AW

Alexander Wizaral in IT KPI C/C++ ХВ (не UB)
если в сообщении больше 4 символов { и }, то наверняка это код
источник

G

GNU/Vsevolod in IT KPI C/C++ ХВ (не UB)
Alexander Wizaral
если в сообщении больше 4 символов { и }, то наверняка это код
main :: IO ()
main = do
 putStrLn "Hello world"
источник

AW

Alexander Wizaral in IT KPI C/C++ ХВ (не UB)
GNU/Vsevolod
main :: IO ()
main = do
 putStrLn "Hello world"
чат по плюсам
источник

AW

Alexander Wizaral in IT KPI C/C++ ХВ (не UB)
или ты совсем универсально хотел?)
источник