c++ does implicit copy constructor copy array member variable?(c++ 隐式复制构造函数是否复制数组成员变量?)
问题描述
可能重复:
复制控制函数中如何处理C数组成员?
如果成员变量被声明为指针,我猜想隐式复制构造函数(由编译器生成)会复制指针.
I would guess implicit copy constructor (generated by compiler) would copy pointer if member variable is declared as pointer.
我不确定数组成员变量会发生什么.
I'm not sure what happens to array member variable.
隐式复制构造函数是否正确复制数组成员?赋值运算符呢?
Does implicit copy constructor copy array member correctly? How about assignment operator?
例如:
char mCharArray[100];
int mIntArray[100];
mCharArray mIntArray 会被正确复制吗?
Would the mCharArray mIntArray be copied correctly?
推荐答案
答案是肯定的.C 中的结构也是如此.
Yes and yes is the answer. This is also true of structs in C.
typedef struct {
int a[100];
} S;
S s1;
s1.a[0] = 42;
S s2;
s2 = s1; // array copied
这篇关于c++ 隐式复制构造函数是否复制数组成员变量?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:c++ 隐式复制构造函数是否复制数组成员变量?
基础教程推荐
- 为什么派生模板类不能访问基模板类的标识符? 2021-01-01
- 如果我为无符号变量分配负值会发生什么? 2022-01-01
- 通过引用传递 C++ 迭代器有什么问题? 2022-01-01
- 非静态 const 成员,不能使用默认赋值运算符 2022-10-09
- 初始化列表*参数*评估顺序 2021-01-01
- GDB 显示调用堆栈上函数地址的当前编译二进制文 2022-09-05
- CString 到 char* 2021-01-01
- 为什么 RegOpenKeyEx() 在 Vista 64 位上返回错误代码 2021-01-01
- 我应该对 C++ 中的成员变量和函数参数使用相同的名称吗? 2021-01-01
- 为什么 typeid.name() 使用 GCC 返回奇怪的字符以及如 2022-09-16
