sách gpt4 ăn đã đi

c++ - 错误 : cannot convert 'std::basic_string::iterator ...' to 'const char* for argument ' 1' ...'

In lại Tác giả: IT Lão Cao 更新时间:2023-10-28 23:14:02 26 4
mua khóa gpt4 giày nike

Tôi nhận được lỗi sau:

error: cannot convert 'std::basic_string::iterator {aka __gnu_cxx::__normal
_iterator >}' to 'const char*' for argument '1'
to 'int remove(const char*)'

由于某种原因,当我在 Mac 上工作时,我的程序可以完美编译......但是一旦我使用 Linux 机器,这个错误就会在多个地方弹出。

这是弹出错误的实例之一:

SomeClass::SomeClass(string t, string art, Time dur) {
char chars[] = ",";
t.erase(std::remove(t.begin(), t.end(), chars[0]), t.end());
art.erase(std::remove(art.begin(), art.end(), chars[0]), art.end());
// Some more code ...
}

更具体地说,错误来自这一行:

t.erase(std::remove(t.begin(), t.end(), chars[0]), t.end());

有谁知道如何解决这个问题?

câu trả lời hay nhất

你忘了#include , 其中 std::remove 位于。没有它,你的编译器只知道 cái này std::remove (我在使用 Visual C++ 14 时遇到同样的错误),它在间接包含 中定义标题。

编译器之间的不同行为是不同 #bao gồm 的结果标准库实现的层次结构。

关于c++ - 错误 : cannot convert 'std::basic_string::iterator ...' to 'const char* for argument ' 1' ...' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34361669/

26 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress