Форум программистов, компьютерный форум CyberForum.ru

И снова связанный список - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ввод и вывод матрицы из файла с++, ошибка http://www.cyberforum.ru/cpp-beginners/thread1086320.html
#include <vcl.h> #include <stdio.h> #include <conio.h> #include <time.h> #pragma hdrstop //--------------------------------------------------------------------------- #pragma argsused void main() {
C++ как обозначит целые части значений Пожалуйста помогите! Функція F повинна приймати дійсне значення, якщо вираз (Ац ИЛИ Вц) И (Ац ИЛИ Сц) не равен нулю, и целое значение в противном случае. Через Ац, Вц, Сц обозначены целые части значений a, b, c, операции И и ИЛИ – поразрядные. как обозначит целые части значений ??? http://www.cyberforum.ru/cpp-beginners/thread1086318.html
C++ Что значит (int)a
Пожалуйста помогите!Что значит ((int)a|(int)b) & ((int)a|(int)c)!=0
C++ Что не хватает выводу?
#include <iostream>//управляет вводом-выводом #include "Vjnkak.cpp" #include <stdio.h>//заголовочный файл стандартной библиотеки языка Си, содержащий определения макросов, константы и объявления функций и типов, используемых для различных операций стандартного ввода и вывода. #include <wchar.h>//для работы с многобайтовыми и широкими символами. int main() {
C++ В чем разница между push_back и push? http://www.cyberforum.ru/cpp-beginners/thread1086312.html
Подскажите пожалуйста, в чем состоит отличие Push_back и просто Push? Они оба насколько я знаю добавляют значение в конец, но например у вектора есть только Push_back, а у queue(очередь) и то и другое.
C++ error C2664 Исправьте пожалуйста / С++ для начинающих Не могу исправить ошибку, cpp(160): error C2664: square::square(const square &): невозможно преобразовать параметр 1 из "std::iostream" в "const square &" 1> Причина: невозможно преобразовать "std::iostream" в "const square #include <iostream> #include <fstream> #include <iomanip> #include <string.h> #include <Windows.h> #include <math.h> #define M_PI 3.14159265358979323846 подробнее

Показать сообщение отдельно
InventoR
3 / 3 / 0
Регистрация: 26.10.2010
Сообщений: 41
31.01.2014, 16:29     И снова связанный список
Есть кусок связанного списка, только начал его делать, в тырнете много примеров как он реализован на структурах, в одних случаях структура вне класса, в других внутри класса, но задание дали реализовать связанный список классами. Проблема в том что не получилось реализовать класса ноды внутри класса LinkedList, хотя ведь по идее всего 2 свойства, это data и указатель на *next элемент.
Пока это все выглядит вот так:

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <iostream>
#include <string>
 
template <class Type>
class Node {
    public:
        Type data;
        Node<Type> *next;
};
 
template <class Type>
class LinkedList {
    private:
        LinkedList<Type> *first;
        LinkedList<Type> *last;
 
    public:
        LinkedList();
        LinkedList(Type data);
        void Add(Type value);
        void Print();
        void Pointer();
};
 
template <class Type>
LinkedList<Type>::LinkedList() {
    first = NULL;
}
 
template <class Type>
void LinkedList<Type>::Add(Type value) {
    Node<Type> *temp = new Node<Type>();
    std::cout << "First, pointer: " << first << std::endl;
    std::cout << "Last, pointer: " << last << std::endl;
    std::cout << "Add, pointer temp: " << temp << std::endl;
    temp->data = value;
    temp->next = NULL;
    first = temp;
}
 
template <class Type>
void LinkedList<Type>::Print() {
 
 
}
При компиляции получаю:
In file included from LinkedListMain.cpp:3:0:
LinkedList.cpp: In instantiation of «void LinkedList<Type>::Add(Type) [with Type = int]»:
LinkedListMain.cpp:15:13: required from here
LinkedList.cpp:38:2: ошибка: cannot convert «Node<int>*» to «LinkedList<int>*» in assignment
Тут присваиваю указателю first класса, указатель на новую Node списка.

Направте на путь истинный, и может кто-то покажет решение если базовый класс будет такого вида:

C++ (Qt)
1
2
3
4
5
6
class LinkedList {
    private:
        Type data;
        Node<Type> *next;
        LinkedList<Type> *first;
        LinkedList<Type> *last;
Может также кто-то обьяснит почему лучше не обьеденять это все в одном классе?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 08:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru