Как реализовать печать класса List С++

127
24 декабря 2020, 15:00

Хочу реализовать печать всего класса List по порядку. List реализую на шаблонах, а в них я не очень силен. К примеру list от int и прочие встроенные типы выводит без проблем, а вот пользовательские типы не могу понять как выводить.

К примеру код метода печати:

template <typename T>
void List <T>::PrintFromHead()
{
cout << "Come the method PrintFromHead:" << endl;
Node <T> *print = head;
while (print)
{
    cout << print->data << endl;
    print = print->pNext;
}
cout << endl;
}

Класс который хочу вывести

class Person {
 public:
char name[len];
char sec_name[len];
char birthday[len];
char ph_num[len];
void Enter_Data() {
    cout << "Enter name" << endl;
    cin >> name;
}
};

Решил проблему следующим образом

class Person {
private:
char name[len];
char sec_name[len];
char birthday[len];
char ph_num[len];
public:
//Ввод данных о человеке
void Enter_Data() {
    cout << "Введите имя: ";
    cin >> name;
    cout << "Введите фамилию: ";
    cin >> sec_name;
    cout << "Введите номер телефона: ";
    cin >> ph_num;
}
friend ostream& operator<< (ostream& out, const Person &cur);
};
//Вывод данных объекта
ostream& operator<< (ostream& out, const Person &cur)
{
out << cur.name << " " << cur.sec_name << " "
    << " " << cur.ph_num << " " << endl;
return out;
}
template <typename T>
class List {
private:
template <typename T>
class Node {
public:
    T data;
    Node* p_next;
    Node() {
        data = T();
        p_next = nullptr;
    }
};
int size_l;
Node<T>* head;
Node<T>* last;
public:
List();
void Add(T data);
void print() {
    cout << "Come the method PrintFromHead:" << endl;
    Node <T> *print = head;
    while (print)
    {
        cout << print->data << endl;
        print = print->p_next;
    }
    cout << endl;
}
};
READ ALSO
Вызвать функцию из dll

Вызвать функцию из dll

Пытаюсь вызвать message box из dll, учебное задание

127
Появилась Uncaught Error: Syntax error, unrecognized expression: # при использования выпадающего меню Bootstrap 4

Появилась Uncaught Error: Syntax error, unrecognized expression: # при использования выпадающего меню Bootstrap 4

Пилю сайт, сначала был HTML шаблон, сейчас в процессе натяжки на WPВо время натяжки на CMS появилась промежуточная задача от заказчика, один из пунктов...

112
Перемножить элементы таблицы jquery

Перемножить элементы таблицы jquery

Есть корзина интернет магазина, в которой стараюсь сделать перерасчет по клику ценыВ случае 1 товара проблем особых нет, но в случае 2х и более...

142