생성자에서 기본 인수로 사용할 변수를 정의 할 수 있습니까?
#include <iostream>
class Foo
{
public:
Foo(int x) { num = x;}
void print(int y = num)
{
std::cout << y << std::endl;
}
private:
static int num;
};
int main()
{
Foo f(5);
f.print();
}
이것은 컴파일되지만 링크 오류가 발생합니다. LNK2001 unresolved external symbol "private: static int Foo::num" (?num@Foo@@0HA)
가능합니다. 클래스 외부에서 정적 변수를 선언 / 초기화하기 만하면됩니다.
#include <iostream>
class Foo
{
//..
};
int Foo::num; //<-- or 'int Foo::num = 0;'
int main()
{
//...
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다