|
은규님 안녕하세요 경호입니다.
처음 C++을 접하면 클래스와 객체 인스턴스등의 개념이 여러가지 혼란을
가져다 주지요 저도 물론 첨에 그것땜시 많이 헤메던 적이 ...
클래스는 간단히 생각해서 구조체의 확장이라고 생각하시면 됩니다.
구조체에다가 변수와 함수를 구겨 넣은것이라고 생각하시면 되지요.
클래스를 선언하더라도 클래스(data type) 그 자체는 컴파일러만 알고
있을 뿐 변수가 선언되지 않으면 실제로 그 모습을 나타내지 않는다. 구
조체의 tag 선언을 했다고 해서 구조체 변수가 생기는 것은 아니며
typedef에 의해 사용자 데이터형을 정의했다고 해서 사용자가 정의한 데
이터형의 변수가 생기는 것이 아님과 같다. 클래스형의 변수를 선언함으
로 인해 메모리상에 그 클래스의 실체가 생기게 되는데 이때 메모리상에
구현된 클래스의 실체를 instance (class, instance 등은 우리말로 번
역하지 않고 그냥 쓰기로 한다. object는 객체 내지 개체로 번역 하
기도 한다.)라 한다.
object라는 용어는 instance와 같은 말이다. 똑같은 대상을 지칭하는 말
이기는 하지만 instance는 클래스가 메모리상에 구현되었다는 의미이며
object란 클래스의 특성을 가진 데이터와 코드를 포함하며 독립적으로
행동할 수 있다는 의미가 더 강하다.
이상은 제가 procbuilder에 올리고 있는 C++강좌의 일부분 입니다.
도움이 되셨을려나 모르겠네요. 사실 클래스나 객체에 대해서 게시판을 통해서
답변을 하다는 것이 무리일것 같군요 ...
굉장히 광범위한 내용이기 땜시 ^^;;
클래스에 대한 내용은 procbuilder.com에 강좌란에 보시면 2장이
클래스에 대한 내용입니다. 참고하세요 ^^
|