作者:PHP猎人 | 来源:互联网 | 2022-11-24 22:18
我有两个简单的类来处理3d几何Point
和Vector
.它们都有3个坐标作为公共成员变量,并定义了一些运算符+, -, * ...
.
class Point
{
public:
double x, y, z;
// ctor and some operators
}
class Vector
{
public:
double x, y, z;
// ctor and some operators
}
是否有任何反对让coordiantes公开的真正理由?我永远不会改变double
任何其他类型.我不想将值限制在x, y, z
特殊范围内,我不想在设置坐标时检查任何内容.
这些类位于一个库中,供其他项目使用.
更新:
对我来说,对于setter/getter来说,一个很大的不满就是必须像这样编写/读取代码:
myVec.setX(myVec.x() + 1.0);
代替
myVec.x += 1.0;
Upadate 2:
Qt在QPoint中使用getter/setter但没有任何好处