Regular functions have mixed case; accessors and mutators match the
name of the variable: MyExcitingFunction(),MyExcitingMethod(),
my_exciting_member_variable(),set_my_exciting_member_variable().
是否隐藏了用户隐藏实现细节的整个封装点,因此他/她不知道accessor / mutator方法是否返回/修改成员变量?如果我更改变量名称或更改它存储在对象中的方式怎么办?
编辑:
如果我有一个实例变量int foo_,它似乎很简单
int foo() const { return foo_; }
但如果我添加另一个返回foo_ 2的方法,我应该命名为bar还是Getbar?
int bar() const { return foo_ + 2; }int Getbar() const { return foo_ + 2; }
如果我选择Getbar并稍后决定将返回值缓存在另一个成员变量bar_中,我是否必须将该方法重命名为bar?
解决方法 实际上,封装的目的是隐藏类的内部工作,而不是隐藏事物的名称.成员变量的名称无关紧要;它是访问者或变更者提供的间接级别.拥有一个访问器使您能够在不破坏类与外部世界的接口的情况下更改类的内部工作方式(包括成员变量的名称).该类的用户不必关心实现细节,包括在类中命名的内容,而只关注类的行为,如从外部看到的.
换句话说,一个类的用户不应该依赖Google的样式指南来确定他们是否正在修改成员变量.
总结以上是内存溢出为你收集整理的c – 为什么Google会在成员变量之后命名访问者和变更者?全部内容,希望文章能够帮你解决c – 为什么Google会在成员变量之后命名访问者和变更者?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)