• 회원가입
  • 로그인
  • 구글아이디로 로그인

[class] C++ - Constructors (생성자)

1,061  
목차
  1. Constructors (생성자)
  2. Constructor Parameters (생성자 매개변수)

 

Constructors (생성자)

 

객체의 속성 초기화에 사용되는 특수 메서드.

 


 

※ 클래스의 객체가 생성될 때 자동 호출됨.

※ 객체의 속성 초기값 설정에 사용 가능.

※ 생성자명은 클래스명과 동일해야하며, public 이여야 함.

※ 반환값 없음. (void 처럼.)

 


[예제]  

 

#include <iostream>

using namespace std;


class Hz {

  public:

    Hz() { // 생성자

      cout << "홈짱닷컴 Homzzang.com";

    }

};


int main() {

  Hz myObj; // 객체 생성 시, 생성자 자동 호출.

  return 0;

}

 

결과값: 홈짱닷컴 Homzzang.com

PS. 한글 깨지는 경우, 여기 맨 하단 참고.

 

Constructor Parameters (생성자 매개변수)

 

1.

생성자는 속성 초기값 설정 위해 매개변수를 원하는 만큼 보유 가능.


2.

생성자 내용 정의는 :: (범위 연산자) 이용해 클래스 밖에서도 가능. (예제2) 

 


[예제1] - 클래스 「안」에서 생성자 내용 정의.

 

#include <iostream>

using namespace std;

 

class Hz {

  public:

    string host;

    int year;

    Hz(string hostName, int openYear) { // 생성자

      host = hostName;

      year = openYear;

    }

};


int main() {

  Hz my("홈짱닷컴 Homzzang.com", 2012); // 객체 생성

  cout << my.host << " (" << my.year << ")\n";

  return 0;

}

 

결과값: Homzzang.com (2012) 

[예제2] 클래스 「밖」에서 생성자 내용 정의.

 

#include <iostream>

using namespace std;


class Hz {

  public:

    string host;

    int year;

    Hz(string hostName, int openYear); // 생성자 선언

};


Hz::Hz(string hostName, int openYear) { // 생성자 정의

  host = hostName;

  year = openYear;

}


int main() {

  Hz my("홈짱닷컴 Homzzang.com", 2012); // 객체 생성

  cout << my.host << " (" << my.year << ")\n";

  return 0;

}

 

결과값: Homzzang.com (2012)



분류 제목
게시물이 없습니다.
3/2
목록
찾아주셔서 감사합니다. Since 2012