gpt4 book ai didi

c++:类实例的 vector ,按类成员值搜索失败

转载 作者:行者123 更新时间:2023-11-28 02:22:55 27 4
gpt4 key购买 nike

我有以下程序,我在其中定义了一个 Point 类的 vector 。我将五个 Point 实例及其 ID 放入该 vector 中。然后我尝试通过 Id 搜索但没有得到预期的结果。下面的程序没有返回任何东西。

#include<iostream>
#include<vector>
using namespace std;

class Point {
private:
int id;
public:
Point(){}
void setId(int k){ id=k; }
int GetId() { return id; }
};

int main()
{
vector<Point> datasets;
for(int i=0; i< 5; ++i){
Point temp;
temp.setId(i);
datasets.push_back(temp);
}

for(int i=0;i<5;i++){
if (datasets[i].GetId() ==4){
return i;
}
}
}

最佳答案

您的程序可能运行良好,我认为您搞混了 returncout实际打印到控制台,目前你没有打印任何东西,你只是返回 i到操作系统,因为您在 main 中使用返回, 使其成为状态代码。

要查看输出,请使用 cout :

#include<iostream>
#include<vector>
using namespace std;
class Point{
private:
int id;
public:
Point(){}
void setId(int k){id=k;}
int GetId(){return id;}
};


int main()
{
vector<Point> datasets;
for(int i=0; i< 5; ++i){
Point temp;
temp.setId(i);
datasets.push_back(temp);
}
for(int i=0;i<5;i++){
if (datasets[i].GetId() ==4){
cout << "i is : " << i << endl;
break;
}
}
}

编辑以回答 OP 的评论:

使用:vector<Point> datasets(5);

关于c++:类实例的 vector ,按类成员值搜索失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31726854/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com