2011. 1. 3. 15:34
c++ 자체가 개객기 라서 그렇습니다

컴파일러가 함수의 프로토 타입을 선언 한 것이라 보기 때문입니다.

그니까

class MyClass {
public:
   MyClass() {};
};

MyClass hello; //  hello 라는 객체를 선언합니다.
MyClass helloWorld(); // MyClass를 리턴하는 인자가 없는  helloWorld 함수의 프로토타입을 선언합니다.

이것을 함수 안에서  쓴다면 함수안에서 선언이 안되는 언어기에
prototyped function not called (was a variable definition intended?) 라고 컴파일러가 경고를 해줍니다.

그러나 전역 범위에서 쓴다면 경고도 안뛰워줍니다.

.... 보고 까먹고 또 찾고 보고 까먹고 또 찾고. c++은 너무 복잡혀...
Posted by newpolaris