首先,我要感谢你的帮助。我试图通过结构中的值对结构的向量进行排序,在本例中是一个double。结构看起来像这样。
struct countryInfoStruct
{
int countryNumber;
double latitude;
double longitude;
string city;
string country;
double distance;
};
我的矢量名称是:
vector<countryInfoStruct> countries;
由.csv文件填充,该文件正常工作。我的问题是排序。我创建了一个用于对矢量进行排序的函数;然而,缺少一些东西。我得到的错误是
不允许使用CountryData :: countryInfoStruct不完整类型
我已经研究了很多次,但还没能解决它。错误消息标有“countryInfoStruct
”。以下是我的sortVector
功能。
void CountryData::sortVector()
{
CountryData m;
auto sortFunc = [](countryInfoStruct a, countryInfoStruct b) -> bool {
return a.distance < b.distance;
}
值得注意的是:我知道我错过了下面的迭代器,但这是因为我无法使实际功能起作用。
sort(countries.begin(), countries.end(), sortVector);