考虑以下类别:

class A
{
  A();
  int number;
  void setNumber(int number);
};

您可以通过3种方式实现“setNumber”:

方法1 :使用'this'指针。
void A::setNumber(int number)
{
  this->number = number;
}

方法2 :使用范围解析运算符。
void A::setNumber(int number)
{
  A::number = number;
}

方法3 :相反,用'm'或'_'表示所有成员变量(这是我的首选方法)。
void A::setNumber(int number)
{
  mNumber = number;
}

这仅仅是个人喜好,还是选择特定方法有好处?

最佳答案

这主要是个人喜好,但是让我在一家公司内部同时发表有关该问题的观点,该公司同时制作了许多小型游戏(因此我周围使用了许多编码样式)。

该链接有几个相关的好答案:Why use prefixes on member variables in C++ classes

您的选择1:

void A::setNumber(int number)
{
  this->number = number;
}



您的选择2:
void A::setNumber(int number)
{
  A::number = number;
}



您的选择3:
void A::setNumber(int number)
{
  mNumber = number;
}

关于c++ - C++成员变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10198046/

10-12 16:04