ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 클래스 = 구조체??, 접근제어지시자
    C++ 2021. 12. 21. 17:06

    https://www.youtube.com/watch?v=iIQXlLv_yHI&list=PLlJhQXcLQBJqywc5dweQ75GBRubzPxhAk&index=59

     

    1. 클래스와 객체

    클래스란? 

    특정한 용도를 수행하기 위한 변수와 함수를 모아둔 틀(자료형)

     

    객체란?

    클래스라는 틀을 이용하여 찍어낸 객체(변수, 메모리 상의 공간)

    객체지향프로그래밍을(Obejct Oriented Programming : OOP)라고 한다.

     

     

    2. 접근제어지시자

    private : 외부에서 접근불가

    protected : 클래스 내부와 상속받은 클래스만 접근가능

    public  : 외부에서 접근가능

    struct TV {
    private:
    	bool powerOn;
    	int channel;
    	int volume;
    
    public:
    	void on() {
    		powerOn = true;
    		cout << "TV를 켰습니다." << endl;
    	}

     

    3. Class vs Sturct의 특성

    Class의 변수와 함수는 기본적으로 private형이다.

    struct의 변수와 함수는 기본적으로 public형이다.

     

    #include <iostream>
    
    using namespace std;
    
    class TV {
    
    	bool powerOn;
    	int channel;
    	int volume;
    
    public:
    	void on() {
    		powerOn = true;
    		cout << "TV를 켰습니다." << endl;
    	}
    
    	void off() {
    		powerOn = false;
    		cout << "TV를 껐습니다." << endl;
    	}
    	void setVolume(int vol)
    	{
    		if (vol >= 0 && vol <= 100) {
    			volume = vol;
    			cout << "볼륨이 " << volume << "입니다." << endl;
    		}
    	}
    	void setChannel(int cnl)
    	{
    		
    		if (cnl >= 0 && cnl <= 999) {
    			channel = cnl;
    			cout << "채널이 " << channel << "입니다." << endl;
    		}
    	}
    };
    
    int main() {
    	TV lg;
    	lg.on();
    	lg.setVolume(50);
    	lg.setChannel(555);
    	lg.off();
    }

    'C++' 카테고리의 다른 글

    객체의 생성과 소멸  (0) 2021.12.21
    this 포인터  (0) 2021.12.21
    네임스페이스  (0) 2021.12.21
    7부(C++ 스타일 프로그래밍) 종합문제  (0) 2021.12.21
    C++ 스타일 함수  (0) 2021.12.21
Designed by Tistory.