<div>#include <iostream></div> <div>using namespace std;</div> <div> </div> <div>class CCircle2D; //아래 클래스가 존재한다고 알려주기 위해 선언</div> <div> </div> <div>struct Vector<br>{<br> float x, y;</div> <div> Vector(); <br> Vector(float x, float y); <br>};</div> <div>Vector::Vector() { x = 0; y = 0; }<br>Vector::Vector(float x, float y) { this->x = x; this->y = y; }</div> <div> </div> <div>class CRectangle2D<br>{<br>public:<br> Vector xy0;<br> Vector xy1;</div> <div> </div> <div> CRectangle2D(float x0, float y0, float x1, float y1)<br> {<br> this->xy0.x = x0;<br> this->xy0.y = y0;<br> this->xy1.x = x1;<br> this->xy1.y = y1;<br> }</div> <div> </div> <div> <font>bool collision(CCircle2D &C)</font><br> { <br> if (xy0.x < <font>C.cen.x</font> && <font>C.cen.x</font> < xy1.x)<br> {<br> return true;<br> cout << "수직영역" << endl;<br> }<br> else if (xy0.y < C.cen.y && C.cen.y < xy1.y)<br> {<br> return true;<br> cout << "수평영역" << endl;<br> }<br> else<br> {<br> return false;<br> }<br> }<br>};</div> <div> </div> <div>class CCircle2D<br>{<br>public:<br> Vector cen;<br> float r;</div> <div> </div> <div> CCircle2D(float cx, float cy, float r)<br> {<br> this->cen.x = cx;<br> this->cen.y = cy;<br> this->r = r;<br> }</div> <div> </div> <div> <font>bool collision(CRectangle2D &Rect)</font><br> {<br> return Rect.collision(*this);<br> }</div> <div><br>};</div> <div> </div> <div>int main()<br>{<br> CRectangle2D Rect(10, 10, 30, 30);</div> <div><br> CCircle2D Cir[6] = { CCircle2D(2, 2, 5.6),<br> CCircle2D(20.5,1.5,7),<br> CCircle2D(31,9,6),<br> CCircle2D(20,9,4),<br> CCircle2D(25,33,5),<br> CCircle2D(32,32,6) };</div> <div> </div> <div> Rect.collision(Cir[0]);</div> <div> </div> <div> return 0;</div> <div><br>}</div> <div> </div> <div>빨간색으로 표시한 부분에서 정의되지 않은 형식을 사용했다고 합니다. </div> <div>다만 collision함수안의 소스 코드를 모두 주석 처리 할 경우에는 이에 해당하는 에러가 뜨지 않습니다.</div> <div>음.. 안에 소스 내용중 해당 클래스 부분의 멤버함수를 불러 올 경우에 에러가 나는듯 하는데 ... </div> <div>해당 클래스가 있다고 선언을 해줬는데도 이를 인식을 못 하는걸까요 ? </div>