如何命名用于设置布尔变量的方法

时间:2019-04-04 08:09:11

标签: c++ naming conventions

我有一个布尔变量,它告诉我用户是否有自己的文本(GUI中有文本编辑小部件)还是应该从名为hasOwnText的文件中加载。

我仅在类内部使用它,因此我不需要任何吸气剂,但是我需要根据GUI的checkBox从外部进行设置。问题是该方法应如何命名?

我一直将它们命名为setHasOwnText,但我不知道这对我似乎不太好。可以改进吗?

如果我的变量名为hasOwnText,并且如果我需要使用吸气剂,我是否应该将其命名为getHasOwnText

谢谢

1 个答案:

答案 0 :(得分:-1)

getter和setter的两种常见模式:

int someValue();              // getter
void someValue(int newValue); // setter

或者:

int getSomeValue();
void setSomeValue(int newValue);

首先,即使您不需要吸气剂,原则上我还是会提供一个。如果用户可以设置一个值(无论是您自己还是其他任何人),那么他/他可能想稍后再知道她/他实际上是在不久前设置的那个值,而不必单独记住。对于布尔值,我对第一种模式也完全满意:

isSomething(true); // or has
if(isSomething()) { }

使用第二种模式,虽然将'get'替换为'is'/'has'replaces,但我仍然只是在'set'前缀之前添加

setHasSomething(true);
if(hasSomething()) { }