|
김백일 님이 쓰신 글 :
: constructor 를 '생산자'라고 한다면
: destructor 는 '소비자'겠네요. -_-;
:
: 각각, '생성자', '소멸자'라고 번역합니다.
:
: 김경래 님이 쓰신 글 :
: : 죄송합니다.
: : 책의 예제를 하다가.. 궁금한점이 있어서 이렇게 글을 올립니다.
: : 책을 보다보니 클래스라는것이 나왔고 그다음에 생산자에 관해서 나왔습니다.
: : 그런데 이 밑의예제가 어떤식으로 돌아가는지 잘이해가 되지않습니다.
: : main함수에서 company a(<------------>);
: : 이런식으로 써줬는데 <-----> 이내용이 name ,sales,profit로 들어간다는이야기인지
: : 아니면 *p,x,y로 들어간다는 이야기인지.. 확실하게 모르겠습니다.
:
: 후자입니다.
:
: 객체가 생성될 때, 생성자 함수인
: company(char *p = "", int x = 0, int y = 0)
: 가 호출됩니다.
: 그럼 p, x, y에 각각 "사이버(주)", 500, 38 가 복사되고,
: 생성자 함수의 코드내에서
: 멤버 변수인 name, sales, profit이 초기화되지요.
:
: 생성자, 소멸자는 클래스의 가장 핵심 개념 중 하나입니다.
: '생산자'라는 엉터리 번역 책 대신
: 제대로 된 C++ 책을 사서 공부해보세요.
:
: : 고수님들의 답변 부탁드립니다.
: : 즐거운 하루되세요
: :
: : #include <stdio.h>
: : #include <string.h>
: :
: : class company {
: : char name[20];
: : int sales;
: : int profit;
: : public:
: : company(char *p="",int x=0,int y=0)
: : {
: : strcpy(name,p);
: : sales=x;
: : profit=y;
: : }
: : void print()
: : {
: : printf("회사명 %s\n", name);
: : printf("매상 %d 억원 \n",sales);
: : printf("이익 %d 억원 \n",profit);
: : }
: : };
: : void main()
: : {
: : company a("사이버(주)",500,38);
: : a.print ();
: : }
: :
|