c++ 소스짜다가 오류가 뜨는데 왜 이런지 모르겠습니다...

rainbow2316의 이미지

지금 상속에 관하여 소스를 짜고 있습니다. 소스는 다 짜놨는데 .. 실행이 좀... 뭐랄까 ..

A 라는 부모클래스가 있고 B C 는 각 각 A 클래스를 상속받습니다.

그림으로 그리면 ..

A
| |
B C

이런식으로 ^^. ...

그리고 헤더 파일도 A B C 각 각 만들어 주고 클래스도 각 각 만들어 주고

그리고 실행소스에서

#include <iostream>
#include "B.h"
#include "C.h"
 
 
using namespace std;
 
int main()
{
	B t;
        t.setName("abcd");
	t.printinfo();
	C a;
        a.setName("ccccc");
	a.printinfo();
}

근데 위의 코드는 실행이 안 됩니다.
근데

#include <iostream>
#include "B.h"
 
using namespace std;
 
int main()
{
	B t;
        t.setName("abcd");
	t.printinfo();
 
}

이 코드는 실행이 되구요 ...

왜 두개가 차이가 나는걸까요 ???

익명 사용자의 이미지

글쎄요 에러메세지도 없고 C 클래스 소스도 없는데 어떻게 알 수 있을까요?
넌센스 퀴즈일까요?

ifree의 이미지

에러 메시지를 살펴 보세요.
A헤더 파일이 중복으로 include 되었을 지도 모르겠네요.