Как мне решить: «ошибка C2039:« cstr »: не является членом« std :: basic_string »? - PullRequest
0 голосов
/ 20 декабря 2009
#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 Ответ

1 голос
/ 20 декабря 2009

out_of_range принимает строковую ссылку, поэтому просто используйте

: out_of_range(message)

вместо.

редактирование:

И как уже говорили другие, компилятор говорит вам, что вы использовали message.cstr() вместо message.c_str(). Но вызов метода в любом случае не нужен, просто передайте строку.

...