C++:修改一个类在另一个类中的私有属性
C++: modifying private attribute of one class in other class
我想允许类 B 的对象将其 ID 发送到 A 的对象。因此,可以将 A 的 ID 设置为 B 的 ID。我的问题是,在"面向对象设计"中,正如我在下面所写的那样,在 B 类中更改 A 的 ID 内容是否是一个"好主意"?
class A
{
private:
string ID;
public:
A()
{
ID = "empty";
}
void set_ID(string id)
{
ID = id;
}
};
class B
{
private:
string B_ID;
public:
B(string id)
{
B_ID = id;
}
void put_request(A& a)
{
a.set_ID(B_ID);
}
};
int main()
{
A a;
B b("my ID");
b.put_request(a);
}
这正是封装的工作原理。它是面向对象设计范式的支柱之一。它指的是将数据保存在私有字段中,并允许通过其他一些(可能是setter和getter)方法对其进行修改和检索。
相关文章:
- 如何使用指针从另一个类访问属性
- 让 Redhawk 组件访问另一个组件的属性
- 使用 QGenericMatrix 作为另一个类的属性
- C++:对于继承多个类的类,如何从一个类继承某些属性,从另一个类继承其他属性?
- 类实例的C++/向量作为另一个类的属性
- LNK2019与另一个工作项目具有相同属性的项目上的错误
- 具有另一个类对象的属性的类构造函数
- 只有Arduino的第一个对象在包含在另一个对象的集合/数组中时会丢失其数据属性值
- 如何有效地从该对象中包含的另一个对象访问对象字段/属性
- C++:修改一个类在另一个类中的私有属性
- 对象作为另一个对象c++的属性
- 如何在C++中更改另一个类函数中的对象属性?
- 从另一个函数更改窗体"visible"属性?
- 在具有C++中另一个类类型的类中声明属性
- 我们可以为一个类指定一个属性名称吗?即使该属性是另一个表中的列
- BGL:使用绑定属性来存储另一个顶点的顶点描述符
- 包含"random"值的类的数组属性(通过另一个类的指针访问时)
- 从另一个类C++中获取对象的属性
- 如何创建一个类来保存另一个类的对象数组,如何操作其他类的私有属性
- 构造对象,其中一个属性依赖于另一个属性.在C++中