본문으로 바로가기

- Access 지정


- private : class 내부에서만 접근 가능
- public : class 외부에서도 접근 가능
- protected : class 내부와 상속관계의 class 에서만 접근 가능

구조체 : 기본 속성이 public 
class :  기본 속성이 private

멤버변수는 일반적으로 private, 멤버 함수는 public영역에 만든다

정보은닉 : 객체 외부에서 객체내의 멤버에 접근하는 것을 허용하지 않는 것

캡슐화 : 데이터 + 함수를 묶어 하나의 블랙박스를 생성
            외부에 노출 할 것과 감출 것 결정
            외부에 노출되는 것을 인터페이스 라고 하고 객체 사용 개발자는 인터페이스만 알면 된다.

class의 private영역에 있는 멤버변수에 data를 입력 / 출력 하기 위한 함수를 public에 별도로 만들어서 사용

Setter 함수 : 멤버 변수에 값을 입력하기 위한 함수
Getter 함수 : 멤버 변수에 있는 값을 출력하기 위한 함수

#include<iostream>

using namespace std;
class Member
{
private:
int age;
public:

void SetAge(int _age){ age = _age;}
int GetAge() { return age; }
};
void main(void)
{
Member mb;
mb.SetAge(20);
cout<< mb.GetAge()<<endl;
};

- This 포인터
- 자기 자신을 가리키는 용도로 사용되는 포인터
자기 참조 포인터라고도 함
컴파일러가 자동으로 만들어 주는 포인터

'this->멤버변수명'

- 생성자 

객체가 생성될 때 자동으로 호출되는 함수
일반적으로 객체가 제대로 동작할 수 있게 준비하는 역할(초기화)
함수 오버로딩(같은 이름에 매개변수만 다른애들) 가능, 따로 안 만들어주면 자동으로 Default생성자'class명(){}'생성

class class명
{
public:
class명/*class명은 같아야한다*/(매개변수)
{함수내용}

#include<iostream>

using namespace std;
class Account
{

public:

Account()
{ cout<<"Account 생성자 호출"<< endl;}
};
void main(void)
{
Account acc; // 객체 생성시. 호출이 자동으로 된다.
}

- 소멸자

객체가 소멸할 때 자동으로 호출되는 함수
일반적으로 객체가 사용한 내용을 정리하는 역할
소멸자는 하나의 클래스에 하나 이상 존재할 수 없음, 따로 안 만들어주면 default 소멸자 생성'~class명(){}'

#include<iostream>

using namespace std;
class Account
{

public:

Account()
{ cout<<"Account 생성자 호출"<< endl;}
~Account()
{cout<<"Account 소멸자 호출"<<endl;}
};
void main(void)
{
Account acc; // 객체 생성시. 호출이 자동으로 된다.
}

http://mindsteeper.tistory.com/75


'[ IT ] > C++, 자료구조' 카테고리의 다른 글

C++ 파일 분할  (1) 2015.06.24
C++ 전자레인지 만들기  (0) 2015.06.24
C++ Class  (0) 2015.06.24
C++ 은행 계좌 관리 프로그램  (0) 2015.06.24
C++ 매크로 / Inline 함수 / 동적 할당  (0) 2015.06.24