c++中为什么static成员函数不能声明为const
2013-02-18 10:05
253 查看
这是C++的规则
const修饰符用于表示函数不能修改成员变量的值,该函数必须是含有this指针的类成员函数,函数调用方式为thiscall
而类中的static函数本质上是全局函数,调用规约是__cdecl或__stdcall,不能用const来修饰它.
但是static 的数据成员可以声明为const.
相关文章推荐
- C++模板声明和实现为什么不能分开来写
- C++静态成员函数不能声明为const、volatile、virtual的原因 与 C++的对象模型
- C++的const类成员函数(解释为什么非const成员函数不能访问const对象的数据成员)
- static成员函数不能被声明为const virtual volatile 原因
- C++里的静态成员函数(不能用const的原因+static在c++中的第五种含义)
- 为什么在函数的声明后面还有一个 const? 如:void fun() const;
- C++中不能声明为虚函数
- c++中为什么会引入const
- C++中的const成员函数(函数声明后加const,或称常量成员函数)用法详解
- [转]c++ 为什么要将基类的析构函数声明为Virtual?
- 为什么构造函数不能声明为虚函数,析构函数可以
- C++ 函数返回值声明为const的原因
- C++ 函数返回值声明为const的原因
- 既然C++读作“C加加”,那为什么C#不能读作“C井”呢?
- 在C++ 程序中调用被 C 编译器编译后的函数库,为什么要加 extern “C”声明?
- C++字符输入方式初探——为什么不能eof
- C++构造函数为什么不能是虚函数
- C++点滴——const/volatile不能用来修饰没有this指针的成员函数
- const常量用extern声明定义的问题(extern变量不能在使用类里初始化)
- C++非const的引用不能指向临时对象