클래스형의 변수 값을 객체(object)라고 한다.
클래스 정의시 보통 멤버 함수를 위한 선언만을 하게된다. 이들 메서드들에 대한 정의는 어느 곳이든 위치할 수 있다.
class DayOfYear{
void output( ); // 메서드
int month;
int day;
}
DayOfYear today, birthday; // 클래스형의 변수 선언 -> DayOfYear라는 Type의 today, birthday라는 객체가 생성되었다.
객체는 데이터 멤버와 함수 멤버(메서드) 둘 다를 가진다.
하나의 프로그램은 상호 연관된 객체들의 집합이며 객체들은 다른 객체의 멤버 함수를 호출함으로써 상호 연동 할 수가 있다..
객체_이름.(도트 연산자) -> 객체(클래스 변수)와 함께 사용
클래스_이름::(영역 지정 연산자) -> 클래스 이름과 함께 사용
(영역 지정 연산자 앞에 오는 클래스 이름을 형 제한자라고도 한다.)
도트연산자를 통해 특정멤버 변수를 결정하거나 함수를 호출한다.
cin >> today.month;
cin >> today.day; // today 객체의 멤버에 접근하여 입력 실행
today.output( );
birthday.output( ); // today 객체가 멤버함수를 호출했다.
void DayOfYear::output( ) //다음과 같이 영역 지정 연산자를 통해 특정 클래스에 대한 멤버함수를 결정한다.
{
switch (month)
{
case 1:
cout<<"January" ; break;
case 2:
cout<<"February" ; break;
···
}
cout<< day;
}
'Programming > C++, C#' 카테고리의 다른 글
[C#] 값 타입 vs 참조 타입 (0) | 2018.06.05 |
---|---|
클래스(정적멤버) (0) | 2018.06.05 |
클래스(생성자) (0) | 2018.06.04 |
클래스(캡슐화) (0) | 2018.06.04 |
컴파일언어와 인터프리터언어 (0) | 2018.06.04 |