c++ - 根据结构的元素对结构对象的 vector 进行排序 - C++

标签 c++ sorting structure

因此,我尝试根据结构中的 num1 对自定义对象 myStructvector 进行排序。 我必须遵循以下代码:

struct myStruct{

    int num1;
    std::vector<int> vecStruct;
    int num2;

    myStruct(int n1, std::vector<int> j, int n2) : num1(n1), vecStruct(j), num2(n2) {}

    bool operator < (const myStruct& s) const
    {
        return (num1 < s.num1);
    }
};

然后我用它来排序:

sort(myVector.begin(), myVector.end());

在哪里

std::vector<myStruct> myVector;

我试着关注 these说明,但我不断收到编译错误:

No matching constructor for initialisation of 'myStruct'

我在 MacOSX Mountain Lion 上使用 Xcode 4.6.2 - 这并不重要,但 Xcode 是给我这个错误的原因

最佳答案

在您上面提供的代码中,您的构造函数名称与结构的名称不匹配(myStruct vs student)。我会先解决这个问题。

关于c++ - 根据结构的元素对结构对象的 vector 进行排序 - C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16368218/

相关文章:

r - 在 R 中对数据进行排序

database - Mongodb 查找和观察

c - 每种数据类型具有多个成员的结构

c++ - 这个建筑会做什么?

python - 如何按数字部分的升序对字符串列表进行排序

c++ - 软件控制程序

java - 快速排序算法,需要一些小的说明

javascript - 我应该如何使用外部脚本构建一个 Meteor 项目?

c++ - 如何在仍然允许 ADL 等的情况下调用同名的其他函数

c++ - 将表达式缩写为标识符