Automotive Software

객체 초기화 본문

프로그래밍 (Programming)/C++ (C Plus Plus) 기초

객체 초기화

AutoSW 2020. 12. 29. 00:26

클래스의 멤버변수 초기화는 보통 해당 클래스의 생성자에서 수행되며, 내부 위치는

  1. 생성자의 초기화 단계
    • 생성자 매개 변수 목록 마감 괄호 뒤 콜론 써줌
    • 다음 줄에 멤버 변수들의 이름과 괄호를 써줌, 괄호 내에 초기화 값(변수) 명시
  2. 생성자 몸통 내부로 나눌수 있음
class cMyClass
{
public:
	cMyClass();
	cMyClass(int inVal1, int inVal2);
	~cMyClass(){}
private:
	memVar1;
	memVar2;
};

#if EITHER_USE_THIS
// 몸통 내부에서의 초기화
cMyClass::cMyClass()
{
	memVar1 = 1;
	memVar2 = 2;
}

#else
// 초기화 단계에서 예시 1
cMyClass::cMyClass():
	memVar1(1),
	memVar2(2)
{  
}
#endif
// 초기화 단계에서 예시 2
cMyClass::cMyClass(int inVal1, int inVal2):
	memVar1(inVal1),
	memVar2(inVal2)
{
}   

'프로그래밍 (Programming) > C++ (C Plus Plus) 기초' 카테고리의 다른 글

다형성 (Polymorphism)  (0) 2021.01.07
상속 (Inheritance)  (0) 2021.01.02
연산자 중첩  (0) 2020.12.29
멤버함수 기본값 vs 멤버함수 중첩  (0) 2020.12.28
참조자  (0) 2020.12.28