2009/04/07 02:02
요즘 수업을 들어가면, 교수님들의 취업걱정은 우리의 걱정을 뛰어있으신 듯 합니다. 여러가지 조언(?)이
때로는 수업의 절반을 차지하는 일도 다반사... 뭐, 오랜만에 Effective C++책을 펴면서, 그냥, 옛날 생각하면서, 여유롭게 프로그래밍, 아니, 코딩 하고 싶어졌습니다.
마음을 비울때 붓을 든 누군가가 있었듯이(누규?) 저는 코딩을 하렵니다.
여하튼, 예전에 VC 6.0에서 안되던 아래 코드가 VS 2005에서는 잘 돌아가는 군요.
#include "stdafx.h"
class GamePlayer
{
public:
static const int NUM_TURN=5;
int scores[NUM_TURN];
};
//문제.
const int GamePlayer::NUM_TURN;
int _tmain(int argc, _TCHAR* argv[])
{
GamePlayer temp;
temp.scores[0] = 5;
printf("Test");
return 0;
}
그런데 잘 돌아가는거를 넘어서, 문제라고 표시한 코드를 주석처리해도 돌아간다는거... =ㅅ=a
뭐지 도대체.
선언과 정의를 무시하는건가~ 뭐, 대충 짜도 돌아가주면 감사하긴 하지만, 이유가 알고싶네~
여하튼, 상수의 영역을 클래스로 제한하려면, 상수를 멤버로 만들어야 하고, 이 상수에 대해서 단 한개의 복사본이 있다는것을 확신하기 위해서 static을 사용합니당.ㅁ
때로는 수업의 절반을 차지하는 일도 다반사... 뭐, 오랜만에 Effective C++책을 펴면서, 그냥, 옛날 생각하면서, 여유롭게 프로그래밍, 아니, 코딩 하고 싶어졌습니다.
마음을 비울때 붓을 든 누군가가 있었듯이(누규?) 저는 코딩을 하렵니다.
여하튼, 예전에 VC 6.0에서 안되던 아래 코드가 VS 2005에서는 잘 돌아가는 군요.
#include "stdafx.h"
class GamePlayer
{
public:
static const int NUM_TURN=5;
int scores[NUM_TURN];
};
//문제.
const int GamePlayer::NUM_TURN;
int _tmain(int argc, _TCHAR* argv[])
{
GamePlayer temp;
temp.scores[0] = 5;
printf("Test");
return 0;
}
그런데 잘 돌아가는거를 넘어서, 문제라고 표시한 코드를 주석처리해도 돌아간다는거... =ㅅ=a
뭐지 도대체.
선언과 정의를 무시하는건가~ 뭐, 대충 짜도 돌아가주면 감사하긴 하지만, 이유가 알고싶네~
여하튼, 상수의 영역을 클래스로 제한하려면, 상수를 멤버로 만들어야 하고, 이 상수에 대해서 단 한개의 복사본이 있다는것을 확신하기 위해서 static을 사용합니당.ㅁ
TAG
main.cpp