我如何解决:“错误C2039:'cstr':不是'std :: basic_string'的成员?

时间:2009-12-20 11:39:30

标签: visual-c++ visual-studio-2005

#include <stdexcept>
#include <string>

using namespace std;

class ListIndexOutOfRangeException : public out_of_range
{
public:
    ListIndexOutOfRangeException(const string & message = "") : out_of_range(message.c_str())
    {
    }
}; // end ListIndexOutOfRangeException

1 个答案:

答案 0 :(得分:1)

out_of_range接受字符串引用,所以只需使用

: out_of_range(message)

代替。

编辑:

正如其他人所说,编译器告诉您已使用message.cstr()而不是message.c_str()。但是方法调用无论如何都是不必要的,只需传递字符串。