默认赋值运算符在结构中如何工作? 假设我在C++中有一个结构,包含一个名称和一个数字,例如 struct person { char name[20]; int ssn; };
假设我声明了两个person变量:默认赋值运算符在结构中如何工作? 假设我在C++中有一个结构,包含一个名称和一个数字,例如 struct person { char name[20]; int ssn; };,c++,C++,假设我声明了两个person变量: person a; person b; 其中a.name=“George”,a.ssn=1,b.name=“Fred”和b.ssn=2 假设在代码的后面 a = b; printf("%s %d\n",a.name, a.ssn); 默认赋值操作符对每个成员进行成员递归的分配。 < P> C++中的默认赋值操作符用于复制值。也就是说,它有效地将所有成员分配给彼此。在这种情况下,这将导致b与a具有相同的值 比如说 a = b; printf("%s\n"
person a;
person b;
其中a.name=“George”,a.ssn=1,b.name=“Fred”和b.ssn=2
假设在代码的后面
a = b;
printf("%s %d\n",a.name, a.ssn);
默认赋值操作符对每个成员进行成员递归的分配。
< P> C++中的默认赋值操作符用于复制值。也就是说,它有效地将所有成员分配给彼此。在这种情况下,这将导致b与a具有相同的值 比如说a = b;
printf("%s\n", b.name); // Prints: George
b.name[0]='T';
printf("%s\n", a.Name); // Prints George
printf("%s\n", b.name); // Prints Teorge
这里面有什么问题吗?Skydoor似乎认为这是读书甚至思考的替代品。129个问题-零答案。说到书籍,我可以告诉你@wheaties你为什么要这么做?为什么不向他们指出一些有用的东西,比如