我有两个结构相似的课程。
class A{
int a;
char *b;
float c;
A(char *str) { //allocate mem and assign to b }
};
class B{
int a;
char *b;
float c;
B(char *str) { //allocate mem and assign to b }
B(B & bref) { //properly copies all the data }
};
我想将 的对象复制B
到 的对象A
。以下转换是否正常?
A aobj("aobjstr");
B bobj("bobjstr");
bobj = aobj; //case 1
bobj = B(aobj); //case 2
案例2会起作用吗?将aobj
被正确转换并解释B &
为何时调用 B 的复制构造函数?
编辑:怎么样?
B bobj(aobj)