반응형
//************************************************
// 구조체 : 여러가지 속성의 조합으로 하나의 새로운 타입을
// 만들어내는 방법!! 
//************************************************

#include 

using namespace std;
// c++에서는 구조체에도 함수들을 정의 할수 있다 !! 
// 하지만, 좀더 나은 OOP구현을 위해 새로운 키워드 !!
// class : 객체의 행동과 속성을 구현하기 위한 도구 !! 

// public :  프로그램 어디에서나 클래스 내의 멤버에 접근이 가능 !! 
// private : 클래스 내부에서만 접근 가능한 멤버  

// struct 는 선언 하지않아도 기존으로 public의 접근 권한 !! 
// class는 기본적으로 private의 접근 권한을 갖는다. 

// 일반적인  설계 규칙!!
// 멤버 변수 : private
// 멤버 함수 : public 

//멤버변수는 그객체의 고유한 값을 갖고 있고... 
//public한 멤버 함수들을 통해서 통체 및 제어 가 되어야 한다 !! 



class Person 
{
	// 속성 
private: 
	float bt; 
	int age; 
	bool sex;
	float bw; 
	char name[20]; 
	// 행동 
public :
	void eating(){
		 bt++;
		 bw++; 
	} 
	void Sleep()
	{
		bt--; 
		bw--; 
	} 
	void Love()
	{
		bt++; 
	} 
};
/*
void eating(Person ss )
{

}

void Love(Person ss)
{

}*/

void main()
{
	// C언어 방식의 프로그램
	//-> 함수 중심의 언어 
	// --> 기능 중심으로 프로그램을  작성해 나간다 !! 
 	/*Person SolSan; 
	eating(SolSan); 
	Love(SolSan);*/
	// C++방식의 프로그램 
	// -> 객체 중심의 언어 !! ( OOP ) 
	// -> 객체( 데이타)를 중심으로 프로그램을 작성한다 !!
	 // OOP : ㅒObject Oriented Programing !
	// --> 객체 지향 --. 
	// --> 객체를 중심으로 프로그램을 작성 !! 
			// Bow 
	Person Bow; //객체 선언 !! 
	//Bow.bt++; 
	//객체 --> 실제 메모리에 로딩되는 인스턴스 
	Bow.Love(); 
	Bow.Sleep(); 
	 // OOP는 데이타 중심의 프로그래밍 방식 !! 

}

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

[C++] 추상화  (0) 2014.11.18
[C++] 생성자  (0) 2014.11.18
[C++] 함수오버로딩  (0) 2014.11.18
[C++] 문법적 개선사항  (0) 2014.11.18
[C++] molloc : 메모리 관리 new  (0) 2014.11.18

+ Recent posts