( То есть так :
Код: Выделить всё
class Pegasus2 : /*public Horse,*/ public Bird2
{
...
void Chirp() {cout << "Pegasus2 Chirp...\n";}
};
--------------------------------------------------------------------------
А если так:
Код: Выделить всё
class Pegasus2 : /*public Horse,*/ public Bird2
{
...
void Chirp() ;//{cout << "Pegasus2 Chirp...\n";}
};
Код: Выделить всё
#include "pegasus2.h"
void Pegasus2::Chirp()
{cout << "Pegasus2 Chirp...\n";}" Error[e27]: Entry "Bird2::__vtbl_Animal_c0" in module pegasus2_c (
C:\Users\Igor\Documents\IAR\test_project\Debug\Obj\pegasus2_c.r90 )
redefined in module pegasus3_c ".
Баг? или я чего то не понимаю?
Приложил компилящийся и не компилящийся проект,отличаются они только упомянутым.
И картинку для простоты осознания схемы наследования....
Ждемс критики...
- Вложения
-
- test-virtualInheritance2.rar
- Еще более простой проект
- (36.19 КБ) 138 скачиваний
-
- IAR_AVR_linker_bug.rar
- проект
- (158.79 КБ) 152 скачивания
-
- Scan-100125-0001+_resize.png
- схема классов
- (100.82 КБ) 412 скачиваний


