令牌之前"."应为非限定 ID

expected unqualified id before "." token

本文关键字:ID 令牌      更新时间:2023-10-16

我一直在读一本叫做c++入门(第7版)的书,目前我正在浏览关于类的章节。我决定尝试用类编写我自己的程序,它看起来比我发现的要容易。我遇到了这个持续存在的问题("."令牌之前预期的不合格id),我尝试过的修复方法并没有解决这个问题。似乎这个问题是程序特定的,所以我很好,它被关闭,只对我有帮助。下面是代码:

class savings {
public:
    void Set_Pin(double pin) {
      savings.pin = pin; // this is where the error is
    }
private:
    int pin;
    int username;
};

如何修复错误?由于

您需要使用this,即

改变
 savings.pin = pin;

 this->pin = pin;

"pin"是你的类的成员,所以你不需要指定"saving "。因为从类的角度来看,"Pin"直接指的是它的成员。

我还建议您以不同的方式命名Set_Pin变量,例如:

void Set_Pin(double aPin) {
    pin = aPin; 
}

应该是:

void Set_Pin(double pin) {
  this->pin = pin;
}

也是不需要的,但是由于与函数参数相同的命名,使用它将是明智的,对用户来说更清楚。

也是关于风格。我会用大写字母开始类名。