Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/133.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
默认赋值运算符在结构中如何工作? 假设我在C++中有一个结构,包含一个名称和一个数字,例如 struct person { char name[20]; int ssn; };_C++ - Fatal编程技术网

默认赋值运算符在结构中如何工作? 假设我在C++中有一个结构,包含一个名称和一个数字,例如 struct person { char name[20]; int ssn; };

默认赋值运算符在结构中如何工作? 假设我在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变量:

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你为什么要这么做?为什么不向他们指出一些有用的东西,比如