C++ Chapter 03. 클래스의 기본. 03-3 객체지향 프로그래밍의 이해
C,C++/CONCEPT 2018. 2. 28. 18:24 |C++ Chapter 03. 클래스의 기본.
03-3 객체지향 프로그래밍의 이해
* 객체지향 프로그래밍의 이해
* 객체를 이루는 것은 데이터와 기능입니다.
* '과일장수'의 정의와 멤버변수의 상수화에 대한 논의
* '나(me)'를 표현하는 클래스의 정의
* 클래스 기반의 두 가지 객체생성 방법
* 사과장수 시뮬레이션 완료!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | #include <iostream> using namespace std; class FruitSeller { private: int APPLE_PRICE; int numOfApples; int myMoney; public: void InitMembers(int price, int num, int money) { APPLE_PRICE=price; numOfApples=num; myMoney=money; } int SaleApples(int money) { int num=money/APPLE_PRICE; numOfApples-=num; myMoney+=money; return num; } void ShowSalesResult() { cout<<"남은 사과: "<<numOfApples<<endl; cout<<"판매 수익: "<<myMoney<<endl<<endl; } }; class FruitBuyer { int myMoney; // private: int numOfApples; // private: public: void InitMembers(int money) { myMoney=money; numOfApples=0; } void BuyApples(FruitSeller &seller, int money) { numOfApples+=seller.SaleApples(money); myMoney-=money; } void ShowBuyResult() { cout<<"현재 잔액: "<<myMoney<<endl; cout<<"사과 개수: "<<numOfApples<<endl<<endl; } }; int main(void) { FruitSeller seller; seller.InitMembers(1000, 20, 0); FruitBuyer buyer; buyer.InitMembers(5000); buyer.BuyApples(seller, 2000); cout<<"과일 판매자의 현황"<<endl; seller.ShowSalesResult(); cout<<"과일 구매자의 현황"<<endl; buyer.ShowBuyResult(); return 0; } | cs |
* 객체간의 대화 방법(Message Passing 방법)
'C,C++ > CONCEPT' 카테고리의 다른 글
C++ Chapter 04. 클래스의 완성. 04-2 캡슐화(Encapsulation) (0) | 2018.02.28 |
---|---|
C++ Chapter 04. 클래스의 완성. 04-1 정보은닉(Information Hiding) // 모르겟다 (0) | 2018.02.28 |
C++ Chapter 03. 클래스의 기본. 03-2 클래스(Class)와 객체(Object) (0) | 2018.02.28 |
C++ Chapter 03. 클래스의 기본. 03-1 C++에서의 구조체 (0) | 2018.02.28 |
C++ Chapter 02. C언어 기반의 C++ 2. 02-6 C++에서 C언어의 표준함수 호출하기 (0) | 2018.02.28 |