表达式必须具有类类型 vs.
Expression must have class type vs
问候我遇到了这个问题"表达式必须具有类类型" -代码是这样的,它是为了保护常量值而制作的-
类.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);
}
谢谢
您拼写class
、private
和public
不正确,并且名称中不能有空格:
Class Myclass {
Public: My class();
Private:
const int value;
};
应该是:
class Myclass {
public: Myclass();
private:
const int value;
};
而且您无法在Myclass
之外访问value
,因为它private
。
您无法访问private
成员。另外,这条线最好Myclass Smth;
.
相关文章:
- 表达式必须具有类类型 vs.
- 当为模板参数提供默认参数时,VS 2017无法正确找到以前定义的类型
- 如何配置VS 2012的编译器来更改基本数据类型大小?
- std::d eclval vs crtp,无法从不完整类型推断方法返回类型
- C ,vs 2015,致命错误:重复资源.类型:清单,名称:1,语言:0x0409
- 基本数据类型变量 VS 对象变量
- (视觉-)C++ 字符串文本的模板类型推断 - VS 2010 与 VS 2017
- clang vs gcc CRTP:constexpr 变量不能有非文字类型
- 使用库时的标准 - 使用库的数据类型 VS 创建我自己的类型?
- 如何初始化boost :: edge_weight_t类型在vs vs c 上
- 多映射插入键类型信息 std::make_pair vs std::p air 构造函数
- VS c++和MinGW实现双重类型有什么区别
- 重新解释一个模板非类型参数:clang c++14 vs c++1z
- char_t VS 中现有的全局类型定义
- 为什么 int vs 布尔类型检查失败
- C++ dynamic_cast vs 将对象类型存储在静态枚举中
- 模板默认类型vs默认值
- 布尔数据类型vs整数数据类型来表示真值
- 在traits中定义类型vs在class中定义类型
- Fortran 复杂类型 VS C++ <complex> 类性能