책 정리/C++ Coding Standards : C++ 코딩의 정석

항목 47 : 멤버 변수의 정의와 선언은 같은 순서로 하라. ( Define and initialize member variables in the same order. )

최익필 2009. 4. 1. 14:10

{

왜냐하면 멤버 변수의 정의순으로 초기화 하기 때문이다.

돌려 보면 무엇이 문제 인지  알 수 있을 것이다. 이 문제는 KGCA15기 허재석(ㅋㅋ)이 맞추었던 것으로 기억한다.


정확하게 문제를 찝어 줘~

name의 생성자에서 full_name을 제일 먼저 생성하고, 값들을 체운다. 왜냐하면 멤버 데이터의 선언은 full_name_이 제일 먼저이기 때문이다. 이 때, 다른 멤버 변수는 아직 생성된 것이 아니므로, 그 값을 이용하여, 값을 초기화 하려고 하니 에러가 나는 것이다.

Effective C++ 이나 Excetional C++ 에 자세히 나오니 패스
}