您的位置:首页 > 编程语言 > C语言/C++

C++编程常见错误—cannot have cv-qualifier//不能有CV限定,在C++中CV指const和volatile—1、非成员函数不能有CV限定,2、静态成员函数不能有CV限定

2013-08-05 15:36 411 查看
http://blog.163.com/xychenbaihu@yeah/blog/static/132229655201132564041489/

情况一、在C++中,非成员函数不能含有CV限定,即const和volatile限定

#include <iostream>

using namespace std;

double getArea() const

{

return 0.0;

}

double getVolume() const

{

return 0.0;

}

int main(int arg,char *argv[])

{

cout << getArea() << endl;

cout << getVolume() << endl;

return 0;

}

编译产生错误:



意思是:

非成员函数不能有cv 限定符,cv 限定符 c++有两个:const 和 volatile,这儿指const 。

情况二、在C++中,静态成员函数不能有CV限定,即const和volatile限定

头文件static_cpp.h

#ifndef __STATIC_H

#define __STATIC_H

class CStatic

{

private:

static int static_value;

public:

static int get_static_value()
const; //当不是static方法时,可以用const进行限定。

};

#endif

源文件staitc_cpp.cpp

#include "static_cpp.h"

int CStatic::get_static_value() const

{

return static_value;

}

在main.cpp中

#include "static_cpp.h"

#include <iostream>

using namespace std;

int CStatic::static_value = 1;

int main(int argc,char *argv[])

{

cout << CStatic::get_static_value()<<endl;

return 0;

}

编译出现的错误:



意思是:

静态成员函数,不能有CV限定符,在C++中CV限定符指const和volatile,这儿指const。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: