반응형
#include <iostream>
#include <string>
using namespace std;
class oop
{
public:
char* str;
oop();
oop(const oop& pt);
void print();
};
oop::oop(const oop& pt)
{
str=pt.str; ///////////// <-여기서 주소값을 주기때문에 얕은 복사가 아닌가요?
}
oop::oop()
{
str="감자";
}
void oop::print()
{
cout << str << endl;
}
int main()
{
oop a;
a.print();
oop b=a;
b.print();
cout << &a.str << endl << &b.str << endl;
a.str="수건";
cout << a.str << endl << b.str << endl;
return 0;
}
얕은 복사가 아닌 이유!
반응형
'System Programmings > C++' 카테고리의 다른 글
[C++] 가상함수의 활용 (0) | 2010.07.08 |
---|---|
[C++] 상속된 클래스에서 형변환 & 가상 함수 (0) | 2010.07.08 |
[C++] 클래스 포함 (0) | 2010.07.06 |
[C++] typedef로 멤버 함수 포인터 사용 (0) | 2010.07.05 |
[C++] typedef로 함수 포인터 사용 (0) | 2010.07.05 |