表达式必须具有类类型 vs.

Expression must have class type vs

本文关键字:类型 vs 表达式      更新时间:2023-10-16

问候我遇到了这个问题"表达式必须具有类类型" -代码是这样的,它是为了保护常量值而制作的-

类.h

Class Myclass{
Public: My class();
Private: 
const int value;
};

CPP 类

Myclass::Myclass()
:value(5)
{}

主要

#include "Myclass.h"
#include <iostram.h>
int main()
{
Myclass Smth();
int five=Smth.value; // error line  
// Smth is underlined       
return(0);
}

谢谢

您拼写classprivatepublic不正确,并且名称中不能有空格:

Class Myclass {
Public: My class();
Private: 
const int value;
};

应该是:

class Myclass {
public: Myclass();
private: 
const int value;
};

而且您无法在Myclass之外访问value,因为它private

您无法访问private成员。另外,这条线最好Myclass Smth;.