Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сформировать массив из индексов https://www.cyberforum.ru/cpp-beginners/thread311227.html
Дан числовой массив A. Сформировать массив B, элементы которого равны индексам отрицательных элементов массива A.
Функция для вызова нового окна. C++
Здравствуйте. Есть программа на C++ написана в консольном варианте. Мне нужно привязать это консольное окно к кнопке - то есть , я создаю Windows Form - рисую кнопки и нужна функция которая будет...
извлечение флешки C++
господа,а как можно програмно сделать безопасное извлечение флешки?
C++ Копирование данных из файла в файл Здравствуйте! Нужно организовать копирование данных из одного файла в другой в бинарном режиме. При выполнении программы в выходной файл вместо нужного текста копируются неизвестные символы. В чём... https://www.cyberforum.ru/cpp-beginners/thread311200.html
C++ Структура и работа с файлом https://www.cyberforum.ru/cpp-beginners/thread311199.html
Здравствуйте! Посмотрите в чем моя ошибка, пожалуйста Дан файл f, содержащий сведения о книгах. Сведения о каждой из книг-это фамилия автора,название и год издания. Найти название книг данного...
C++ MySQL
Для диплома! нужна красивая теория языком программиста Почему MySQL лучше остальных программ?
C++ Ошибка void
void L1 { int i,k,c,h,d; char e; d=0; for (i=0,k=0,h=0;m!='\0';i++,k++,h++) { t1=m2; e=m2; for (c=0;c!=h;c++)
C++ распределение памяти размещение памяти. LPVOID trm = VirtualAlloc(NULL, lasth+1*(sizeof (float)), MEM_COMMIT, PAGE_READWRITE); мне нужен указатель тип float на начало этой памяти, как сделать? https://www.cyberforum.ru/cpp-beginners/thread311186.html
C++ Нобходимо считать ввод с консоли ПОСЛОВНО https://www.cyberforum.ru/cpp-beginners/thread311165.html
Вот я написал, но выдаётся какая-то херь, наберите qq ww ee и увидите сами; Кроме того, предполагается, что поток будет состоять из одного слова, а значит, должно сработать qqq<Enter> Но не...
C++ компонент CheckListBox мне нужны методы компонента CheckListBox , подробно описанные и расписанные... помогите с поиском этой информации) https://www.cyberforum.ru/cpp-beginners/thread311154.html
pito211
186 / 173 / 18
Регистрация: 22.03.2010
Сообщений: 612
03.06.2011, 07:39 0

Как вызвать виртуальную функцию из дочернего класса, если она определена и вызывается в конструкторе РОДИТЕЛЬСКОГО класса?

03.06.2011, 07:39. Просмотров 6386. Ответов 19
Метки (Все метки)

Ответ

я так понял, что нужно в дочернем классе вызвать функцию родительского, которая была переопредела в нём. Если это так, то нужно просто явно указывать версию sin::f() - функция родительского класса, base::f() - функция дочернего. То есть наоборот блин. Тогда никаких неоднозначностей не будет

Добавлено через 4 часа 11 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class sin: public base {
 public:
  sin ():base(){ sin::f(); base::f();};
  ~sin () {};
 
  //Вот виртуальная функция, которую я переопределяю и которую очень хочется вызвать в конструкторе 
  //этого класса
  void f () ;
};
 
 
void sin::f () {
 cout<< "Вот этот текст я хочу увидеть, но не получается"<< endl;
};
здесь в конструкторе обе функции вызываются

Вернуться к обсуждению:
Как вызвать виртуальную функцию из дочернего класса, если она определена и вызывается в конструкторе РОДИТЕЛЬСКОГО класса?
1
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2011, 07:39
Готовые ответы и решения:

Как вызвать функцию родительского класса?
#include &lt;iostream&gt; using namespace std; class foo{ void somefunc(); public: int...

Может ли метод родительского класса обратиться к полю дочернего класса
Может ли метод родительского класса обратиться к полю дочернего класса?

В конструкторе вложенного класса инициализируется приватное поле. Потом вызывается функция-метод этого класса и выводит значение этого поля НО НЕ ТО!
Друзья! Почему так? #include &lt;windows.h&gt; #include &lt;iostream&gt; using namespace std; //Вот...

Как вызвать метод родительского класса;
Собственно вопрос; Есть класс a и b; Класс b унаследован от класса a; И как теперь из класса b...

Почему вызывается перегрузка виртуальной функции из приватной секции дочернего класса?
Как вообще такое происходит class A { public: virtual void foo(){std::cout&lt;&lt;&quot;A\n&quot;; } };...

19
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.