VS2010 中的函数错误
the function error in vs2010
我在vs2010中写了以下内容:
int test() const;
它告诉我const
使用不正确,并说:
非成员函数不允许使用类型限定符
我想知道为什么,这是vs的问题,或者如何在vs中使用这样的函数?
应用于函数时const
仅适用于非静态成员函数,不适用于自由函数或静态成员函数。
class A
{
void f1() const; // OK
static void f2() const; // Not OK
};
void f3() const; // Not OK
从C++标准:
- 9.3.1 非静态成员函数
非静态成员函数可以声明为常量、易失性或常量易失性。
- 9.4.1 静态成员函数
静态成员函数不得声明为常量、易失性或常量易失性。
const 在该上下文中意味着此方法不会修改任何成员变量。如果它不是类的方法(即它是一个自由浮动函数),那么它就没有意义。
相关文章:
- 链接器错误:函数的多个定义
- 编译器错误:函数调用在常量表达式中必须有一个常量值
- 错误:函数声明符之后的预期函数体
- C 错误 - 函数不能超载
- 如何修复传递参数时调用错误函数的主函数?(C++)
- 错误:函数调用中有两个参数
- 错误:函数不是“类”的静态数据成员 - C++
- C ,G 编译错误函数
- CMake 解析错误函数缺少结尾")"。而是找到带有文本的未终止字符串")
- C++ 错误 函数 2 的多重定义
- 错误:函数调用中从int到int(*)[4]的转换无效
- C++14 自动扣除错误:函数返回一个数组
- 视觉C++错误:函数必须返回一个值
- 错误:函数声明中的两种或多种数据类型
- 错误:函数未在作用域中声明
- rtw_android.c错误:函数“strnicmp”的隐式声明[-Weror=隐式函数声明]
- 错误:函数中的return语句没有值,返回“void*”[-fpermission]
- 简单程序中的链接器错误:函数的多重定义
- 错误:函数参数太多
- 错误:函数__tmaincrtstartup中引用的未解析的外部符号_main