2개의 클래스가 서로를 포함하는 코드입니다. <div><br></div> <div><br><div><br></div> <div><div>#include<iostream></div> <div><br></div> <div>using namespace std;</div> <div><br></div> <div>class Weapon;</div> <div>class Human;</div> <div><br></div> <div>class Human</div> <div>{</div> <div>public :</div> <div><span style="white-space:pre;"> </span>int a;</div> <div><span style="white-space:pre;"> </span>Weapon myWeapon;</div> <div><span style="white-space:pre;"> </span></div> <div><span style="white-space:pre;"> </span>Human() :a(3)</div> <div><span style="white-space:pre;"> </span>{}</div> <div><span style="white-space:pre;"> </span></div> <div><br></div> <div>};</div> <div><br></div> <div>class Weapon</div> <div>{</div> <div>public :</div> <div><span style="white-space:pre;"> </span>int a;</div> <div><span style="white-space:pre;"> </span>Human myHuman;</div> <div><br></div> <div><span style="white-space:pre;"> </span>Weapon() :a(3)</div> <div><span style="white-space:pre;"> </span>{}</div> <div><br></div> <div>};</div> <div><br></div> <div>int main(void)</div> <div>{</div> <div><br></div> <div><span style="white-space:pre;"> </span>Human human;</div> <div><span style="white-space:pre;"> </span>Weapon weapon;</div> <div><br></div> <div><span style="white-space:pre;"> </span>printf("human--myWeapon--a : %d\n", human.myWeapon.a);</div> <div><br></div> <div><span style="white-space:pre;"> </span>printf("weapon--myHuman--a : %d", weapon.myHuman.a);</div> <div><br></div> <div><span style="white-space:pre;"> </span>return 0;</div> <div>}</div></div></div> <div><br></div> <div><br></div> <div><br></div> <div>Human은 자신의 무기(Weapon)가 무엇인지 알기위해, Weapon은 자신의 소지자(Human)가 누구인지를 알 기 위해</div> <div><br></div> <div>서로를 포함하는 <span style="font-size:9pt;">예제코드를 작성하였습니다.</span></div> <div><span style="font-size:9pt;"><br></span></div> <div><br></div> <div><br></div> <div>그런데 컴파일을 하면 아래와 같은 에러문이 나옵니다.</div> <div><br></div> <div><div>오류<span style="white-space:pre;"> </span>C2079<span style="white-space:pre;"> </span>'Human::myWeapon'은(는) 정의되지 않은 class 'Weapon'을(를) 사용합니다.<span style="white-space:pre;"> </span>Contain_Test<span style="white-space:pre;"> </span>15</div></div> <div><div><span style="font-size:9pt;">오류</span><span style="font-size:9pt;white-space:pre;"> </span><span style="font-size:9pt;">C2228</span><span style="font-size:9pt;white-space:pre;"> </span><span style="font-size:9pt;">'.a' 왼쪽에는 클래스/구조체/공용 구조체가 있어야 합니다.</span><span style="font-size:9pt;white-space:pre;"> </span><span style="font-size:9pt;">Contain_Test</span><span style="font-size:9pt;white-space:pre;"> </span><span style="font-size:9pt;">45</span><span style="font-size:9pt;white-space:pre;"> </span></div></div> <div><br></div> <div><br></div> <div><br></div> <div><br></div> <div><br></div> <div><br></div> <div>인터넷을 찾아보니</div> <div><br></div> <div><div>class Weapon;</div> <div>class Human;</div></div> <div><br></div> <div>이 2개 문장을 추가하면 해결 되는듯 해서 따라해보아도 마찬가지로 에러가 나오네요...</div> <div><br></div> <div>어떻게 해야할까요??</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.