부모클래스를 상속받은 자식 클래스가 클론만들기
글쓴이: ignore444 / 작성시간: 수, 2006/05/17 - 3:38오후
class CMachine
{
public:
CMachine(void);
virtual ~CMachine(void);
virtual int CopyFromNowToBefore(void) = 0;
CMachine *m_pBeforeMachine;
}
class CPC:public CMachine
{
public:
VALUE m_pc31to0;
};
int CPC::CopyFromNowToBefore(void)
{
m_pBeforeMachine = new CPC[1];
((CPC*)m_pBeforeMachine)->m_pc31to0 = this->m_pc31to0;
return 1;
}
이렇게 짜야 에러 없이 돌아가더군요
위에서 ((CPC*)m_pBeforeMachine)->m_pc31to0 = this->m_pc31to0; 이것을 좀 더 깔끔하게 하는 법이 없을까요
아니면 프로그램 전체적으로 자식의 클론을 만들기 쉬운 방법이라던지요
맨처음에는 m_pBeforeMachine)->m_pc31to0 = this->m_pc31to0; 이렇게 했는데
에러가 나더군요.
Forums:
단순하게...
copy constructor를 쓰면 안 될까요... -_-;;
new로 객체를
new로 객체를 생성하면 복사생성자는 못 쓰지 않나요 ?
new로 생성해도
new로 생성해도 복사생성자를 쓸 수 있습니다.
댓글 달기