访问C++中的私有成员数据
access private member data in C++?
在类A中,我定义了一个私有成员数据char * d;
。
同样在类A中,我重载操作符=,它接受const A &other
参数并进行赋值。
当我重载operator=时,我意识到当我试图编写类似d = *other.d
的东西时,我的Visual Studio C++不会向我发出警报。
所以我在这里是想问,为什么允许我这样做?我还没有运行这个程序,只是好奇为什么我没有收到这条线的警报。在我看来,私有数据成员只能由getter访问。
那么我错了吗?
访问限制由类操作,而不是由instance-class A
方法可以访问该类的任何实例的私有数据,而不仅仅是this
。
相关文章:
- 嵌套在类中时无法设置成员数据
- 私有成员数据不可用于公共成员功能
- 我想知道我是否可以将一个类分配给特定的成员数据并创建该类的实例
- 类的成员数据未更新
- 为什么类成员数据必须是静态的才能被模板化类的模板化结构成员访问
- C++:成员不可访问-使用友元函数允许一个类修改另一个类的成员数据
- 如何高效更改向量中所有对象的成员数据?
- constexpr 偏移量,带有指向成员数据的指针
- 从其后声明的另一个成员数据初始化成员数据是否为未定义行为
- C++ 类析构函数删除部分但不是全部成员数据
- 初始化 MFC 中 CFormView 派生类的成员数据
- 覆盖复制/移动分配超载时,我是否需要删除当前的成员数据
- 根据参数设置构造函数的成员数据类型
- 对齐说明符:在类型 / 上 成员数据
- 如何实现ressize()以更改C 中动态成员数据的能力
- C++ 阻止复制成员数据
- 什么是成员数据指针的正确赋值语句
- C++ 在类中使用 strcmp() 处理私有成员数据
- 成员数据在stack实例上覆盖
- 初始化继承的成员数据