2022. 11. 16. 03:21ㆍC++
1. 멤버함수 getter와 setter
getter는 멤버변수를 불러오고, setter는 멤버변수에 값을 대입하는 함수이다.
캡슐화(encapsulation)로 인해 감춰진 멤버 변수에 접근하기 위해 사용한다.
아래 소스는 멤버함수를 내부에서 정의한 방식이다.
멤버함수를 내부에서 정의 시 자동으로 inline 함수가 된다.
#include <iostream>
class Dog
{
private: //class의 기본 속성이므로 생략 가능
int age;
public:
int getAge()//age를 리턴하는 getter 멤버함수
{
return age;
}
void setAge(int ageNum)//age에 값을 대입하는 setter 멤버함수
{
age = ageNum;
}
};
int main()
{
Dog coco;
coco.setAge(5);//setAge의 argument에 5를 넣어 age에 대입
std::cout << coco.getAge();//age의 값을 리턴
}
2. 멤버함수를 클래스 외부에서 정의하기
보통 내부 정의보다는 이 방식으로 사용한다. 클래스 내부에서 선언 후에 외부에서 정의할 수 있다.
외부 정의 시 범위지정연산자(::)를 사용하여 소속 클래스를 명시해야 한다.
#include <iostream>
class Dog
{
private: //class의 기본 속성이므로 생략 가능
int age;
public:
int getAge();//멤버함수 선언
void setAge(int num);
void bark();
};
int Dog::getAge()//멤버함수 정의(멤버함수를 정의할 때는 소속 클래스를 명시해야 함)
{
return age;
}
void Dog::setAge(int ageNum)
{
age = ageNum;
}
void Dog::bark() {
std::cout << "멍멍\n";
}
int main()
{
Dog coco;
coco.setAge(1);//setAge의 argument에 5를 넣어 age에 대입
coco.bark();
std::cout << coco.getAge();//age의 값을 받음
}
출처 : https://www.youtube.com/channel/UCM8wseo6DkA-D7yGlCrcrwA/playlists, C++ 프로그래밍 강의 - 한성현 교수님
'C++' 카테고리의 다른 글
C++ 프로그래밍 10주차 정리 (0) | 2022.12.22 |
---|---|
C++ 프로그래밍 7-9주차 정리 (0) | 2022.11.21 |
C++ 프로그래밍 5주차 정리 (0) | 2022.11.09 |
C++ 프로그래밍 4주차 정리 (0) | 2022.10.11 |
C++ 프로그래밍 3주차 정리 (0) | 2022.09.28 |