C++ getter和setters最好的风格

dan*_*uch 2 c++ coding-style getter-setter

在Java中,代码约定简单明了,在这种风格中:

public:
    int GetMyAge(){
        return myAge;
    }
    void SetMyAge(int myAge){
        this->myAge = myAge;
    }
private:
    int myAge;
Run Code Online (Sandbox Code Playgroud)

(我知道这是"同样的事情",但是)我已经阅读了大部分关于SO的相关问题,我仍然不知道用C++做"最好的"和"最官方的"方式.这不仅仅是一个偏好的问题,可以吗?

编辑:

好像它可以.

小智 11

最好不要这样做.你的年龄真的可以这样改变吗?盲目地为所有属性提供getter和setter是一个标志,你没有正确设计你的类.

  • 我建议你不需要`getPosition()`.问题是你为什么需要这个职位?在棋盘上画出玩家?然后你应该有一个`draw()`方法,你传递板/屏幕对象.是因为你想序列化吗?那么你应该有一个`serialize()`方法,你也可以传递一个流.getter/setter将对象的设计与使用该对象的代码紧密耦合.您希望通过将操纵对象的代码放入对象来打破耦合. (2认同)

cor*_*iKa 5

最好的风格是允许您和您的团队制作出客户继续为您付费的高质量软件.

这种风格对您和您的团队有何影响?你发现它会导致(或阻止)错误吗?您觉得维护代码很容易吗?你对格式化有争议吗?

回答这些问题,你的问题的答案就会出现.

  • -1:这个答案对于回答这个问题毫无帮助,因为它太笼统了.制作软件可能会在短期内完成任务,但如果他们必须维护由于不遵循良好实践的过于笼统的风格而产生的劣质代码,那么将会迅速破坏您和您的客户. (3认同)