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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Mr.Cu
0 / 0 / 0
Регистрация: 31.03.2011
Сообщений: 17
#1

Классы && С++ Отложение объявление на потом - C++

10.01.2013, 15:45. Просмотров 240. Ответов 4
Метки нет (Все метки)

У меня есть базовый класс (StudentDataBase) который я в дальнейшем хочу наследовать, но тут идёт привязка к Student fmog, как я могу объявить это, чтобы в дальнейшем заменить на допустим Teacher fmog, Help fmog? Необходимо это потому, что все методы этого класса используют node и я не могу в наследуемом классе объявить структуру отдельно - так как базовый класс использует node в методах.
Помогите, заранее благодарю.
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
class StudentDataBase 
{
 struct node
   {
       Student fmog;//Класс типо студент
       node* next;
   };
private:
   node*  head;
   node*  tail;
};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2013, 15:45     Классы && С++ Отложение объявление на потом
Посмотрите здесь:

C++ Где используются логические операторы && и ||
C++ Изменение формата данных && работа с файлом
Указатели(Какую роль выполняют &* и *&) C++
C++ Очистка потока ввода && строки
Объясните почему не срабатывает И (&&) C++
C++ Чем оператор || отличается от оператора && ?
[struct tm] или нестыковка в C89 & C++98 & C++11? C++
Nested classes && enum declaration C++
C++ Логические операции (Логические &&, ||) (Побитовые &, |)
C++ Напишите цикл, эквивалентный приведенному выше циклу, не пользуясь операторами && и ||
C++ Strcpy_s выдает ошибку L Buffer is too small & & 0
C++ Вызвать функцию базового класса с ссылочным квалификатором &&

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
10.01.2013, 15:48     Классы && С++ Отложение объявление на потом #2
Mr.Cu, Шаблоны же. Или указатель на базовый класс.

C++
1
2
3
4
5
6
7
8
9
template<typename Entity>
class DataBase
{
   struct node
   {
       Entity fmog;
       node* next;
   }
};
Mr.Cu
0 / 0 / 0
Регистрация: 31.03.2011
Сообщений: 17
10.01.2013, 15:59  [ТС]     Классы && С++ Отложение объявление на потом #3
Цитата Сообщение от ForEveR Посмотреть сообщение
Mr.Cu, Шаблоны же. Или указатель на базовый класс.

C++
1
2
3
4
5
6
7
8
9
template<typename Entity>
class DataBase
{
   struct node
   {
       Entity fmog;
       node* next;
   }
};
Я слышал о шаблонах,спасибо, это идея!!! Сейчас попробую

Добавлено через 2 минуты
А как мне при наследовании указать чтобы шаблон Энити заменил на Student или допустим Test?

Добавлено через 5 минут
Цитата Сообщение от Mr.Cu Посмотреть сообщение
Я слышал о шаблонах,спасибо, это идея!!! Сейчас попробую

Добавлено через 2 минуты
А как мне при наследовании указать чтобы шаблон Энити заменил на Student или допустим Test?
C++ (Qt)
1
2
3
class test:DataBase<Student>
{
}
;
?
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
10.01.2013, 16:00     Классы && С++ Отложение объявление на потом #4
Mr.Cu, Верно
Mr.Cu
0 / 0 / 0
Регистрация: 31.03.2011
Сообщений: 17
10.01.2013, 16:15  [ТС]     Классы && С++ Отложение объявление на потом #5
А если я в наследуемом классе обращаюсь к методу базового класса шаблон уже будет заменён?

Добавлено через 9 минут
Спасибо всё работает
Yandex
Объявления
10.01.2013, 16:15     Классы && С++ Отложение объявление на потом
Ответ Создать тему
Опции темы

Текущее время: 04:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru