c++ 深拷贝 浅拷贝

需要注意,在C++的类定义中,有赋值构造函数和拷贝构造函数。所以在执行A b=a操作时,会重新分配空间,属于深赋值。

 cout<<"vector是对象,深赋值"< a={"a","f","g"};
    vector b =a;
    b[2] = "kk";
    for(int i = 0; i < 3; i++){
        cout<(temp);
    char *f = e;
    *(++f) = 'h';
    cout<< e <<","<

结果:

vector是对象,深赋值
afg
afkk
string是对象,深赋值
string,stping
char*,浅赋值:
shring,hring

 

你可能感兴趣的:(c++ 深拷贝 浅拷贝)