在作为类“没有用于调用swap()的匹配函数”的成员的向量上调用sort()

用户名

我有一个A类声明为:

class A {
public:
    vector<int> vec;
};

运行以下代码:

const A *a = new A();
sort(a->vec.begin(), a->vec.end());

给我错误:

algorithm: No matching call to swap()

在Xcode中。

关于为什么发生这种情况的任何线索?

juanchopanza

const A *a表示“指向的指针const A,这意味着a不能通过修改对象asort修改传递给它的迭代范围的元素。由于这些元素由指向的对象拥有a,因此不能通过修改a

因此,您不能调用对vector进行排序a->vec您需要找到其他方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

没有用于调用“类”的匹配函数

在Rcpp中没有用于调用“ as”的匹配函数

没有用于调用 stof 的匹配函数

线程C ++:没有用于调用的匹配函数

没有用于调用“currency::currency()”的匹配函数

错误:没有用于调用“CreateFileW”的匹配函数

没有用于调用默认构造函数的匹配函数

构造函数中没有用于调用的匹配函数-C ++ 11

默认构造函数错误,没有用于调用的匹配函数

错误:没有用于调用“构造函数”的匹配函数注意:候选对象是:

g++ 错误:没有用于调用“fpclassify(float&)”的匹配函数

没有用于调用“student::student()”错误的匹配函数

错误:没有用于调用“DollarAmount::DollarAmount(<brace-enclosed initializer list>)”的匹配函数

错误:没有用于调用“std::vector<Movie>::erase(size_t&)”的匹配函数

没有用于调用 Employee::Employee() 错误的匹配函数

没有用于调用“regex_match”的匹配函数

没有用于调用 'bind(<未解析的重载函数类型>, const std::_Placeholder<1>&, int*) 的匹配函数

构建幕府将军时出错:没有用于调用“PyUnicode_AsUTF8AndSize”的匹配函数

错误:没有用于调用“std::vector<float>::push_back(std::vector<float>&) const”的匹配函数

从向量中删除值时,没有匹配的成员函数可用于调用“擦除”

RCPP-没有用于调用“转换”的匹配功能

没有用于初始化类的匹配构造函数

没有用于初始化可变参数模板类的匹配构造函数

sort()-没有匹配的函数来调用'swap'

没有匹配的函数来调用类中的成员函数

没有匹配的成员函数用于调用连接

install.package("ggiraph") 时出错:“在 AWS-Cloud Linux 上没有用于调用 'regex_replace”/RStudio 的匹配函数

为什么gsl没有用于向量*矩阵乘法的单独函数?

没有匹配的函数来调用sort()