我的意思是,我们是否可以在C中将函数声明为const,例如: void fun(int iVar) const; int g_var = 1; void fun(int iVar) { //do some thing g_var = iVar; }
不在标准C中,因为没有类或对象(如“类实例,即带有相关函数的数据集合”),因此函数“const”“针对”的对象不存在。理论上可能会有这样一种符号表示“此函数没有全局可见的副作用,它是其输入参数的纯函数”,但现在还没有。GNU GCC编译器支持,作为扩展,将函数声明为const或pure。int square(int) __attribute__((pure)); __attribute((pure)) 部分是特定于GCC的。
const
在那里做什么?这在C++中既不合法也没有意义。 - Jim Balter