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

Класс шаблон и методы класса - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Шахматная доска http://www.cyberforum.ru/cpp-beginners/thread622484.html
Есть шахматная доска (8*8). Нужно с помощью фигуры "конь" обойти все 64 клетки шахматной доски. Что-то скопипастил, но работать не хочет. Помогите пожалуйста разобраться. и еще в конце требуется вывести на экран доску шахматную с номерами ходов "коня" на каждой клетке #include <stdio.h> #include <stdlib.h> main() { int ari; for (int i=0; i<8; i++);
C++ Проверте, пожалуйста, правильность программного кода #include "stdafx.h" #include "string.h" #include "iostream" using namespace std; int main() { char text; char*slova; char*str=" "; char*tekst; http://www.cyberforum.ru/cpp-beginners/thread622478.html
Алгоритм Дейкстры для лабиринта C++
Лабиринт задается матрицей, где 0 стены, 1 проходы, s - начальная вершина, f - конечная. Лабиринт считывается из файла. Не могу сообразить, как алгоритм Дейкстры для графов применить для лабиринта( как посчитать количество вершин и ребер и их длины s 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 0 1 1 0 1 1 0 f подскажите,пожалуйста
Составить описание класса, обеспечивающего представление матрицы произвольного размера C++
Составить описание класса, обеспечивающего представление матрицы произвольного размера с возможностью изменения числа строк и столбцов, вывода на экран подматрицы любого размера и всей матрицы. вот код: описание класса есть, только нужно дописать int main! напишите пожалуйста вроде бы это совсем не сложно, но так я с программированием не связан то сам не могу( #include<iostream> using...
C++ Бешенный плай http://www.cyberforum.ru/cpp-beginners/thread622395.html
bool LoadPly (char *FileName , TModel &Model , float Unit ) { std::string Buffer; std::string Buffer1; std::ifstream File; bool VertexFlag; bool ...
C++ Удаление вершины бинарного дерева Как удалять вершины бинарного дерева вместе с потомками? подробнее

Показать сообщение отдельно
Ma3a
Эксперт C++
612 / 456 / 31
Регистрация: 28.01.2011
Сообщений: 605
11.07.2012, 19:39     Класс шаблон и методы класса
MAnton, Вы определяете функцию find вне тела самого класса List<Data>, а класс Node у вас находится внутри него, зависит от внешней по отношению к нему области видимости класса List<Data>. Поэтому компилятор и не видит этот Node. Для этого стоит указать явно, что он определён в List<Data>:
C++
1
List<Data>::Node
Более того, поскольку класс List<Data> является шаблонным, компилятору надобно ещё указать ключевое слово typename перед List<Data>::Node, это подсказка компилятору, потому что он в этом месте не знает, что Вы определяете, вложенный тип Node, или же, например, переменную внутри класса. А не знает он этого, потому что в общем случае Вы можете указать специализацию этого шаблона для какого-то конкретного типа, где этого Node не будет и в помине, либо он будет представлять собой нечто иное. Поэтому сигнатуру функции в этом определении нужно записать так:
C++
1
template<class Data> typename List<Data>::Node * List<Data>::find(Data d)
 
Текущее время: 13:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru