C:\temp>cl /v
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 14.00.50727.42 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.
----------- a.cpp ----------------
#include <iostream>
using namespace std;
class A{
public:
void a(){
cout << "A" << endl;
}
virtual void b(){
a();
}
};
class B{
};
class B : public A{
public:
void a(){
cout << "B" << endl;
}
void b(){
a();
}
virtual void b(){
a();
}
};
int main(int argc, char ** argv){
A * a = new B();
a->b();
return 0;
}
--------- / --------------------
C:\temp> cl a.cpp
a.cpp(20) : error C2011: 'B' : 'class' type redefinition
a.cpp(16) : see declaration of 'B'
a.cpp(36) : error C2440: 'initializing' : cannot convert from 'B *' to 'A *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast


Ответ на:
комментарий
от phoenix

Ответ на:
комментарий
от eXOR

Ответ на:
комментарий
от eXOR

Ответ на:
комментарий
от eXOR
Ответ на:
комментарий
от phoenix
Ответ на:
комментарий
от anonymous_incognito
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Вопрос по С++ (2004)
- Форум Укозатель на функцию член (2006)
- Форум C++/exceptions - деление на ноль не ловиццо, почему? (2006)
- Форум [C++] Перегрузка new и delete в производном классе (2011)
- Форум Не разберусь что за ошибка. (2015)
- Форум Ниасилил C++ vector<unique_ptr<T>> list initialization (2016)
- Форум [C++] [Жаба] Это магия? (2008)
- Форум Интересное имя класса после оператора typeid (2004)
- Форум C++ - указатель на функции класса (2012)
- Форум python: повышающее преобразование? (2008)