#include <string>
#include <set>
#include <iostream>
struct TableItem
{
int id;
std::string idText;
std::string positionText;
std::string shearText;
std::string momentText;
};
struct CompareIDText
{
bool operator()(const TableItem * t1, const TableItem * t2) const;
};
bool CompareIDText::operator()(const TableItem * t1, const TableItem * t2) const
{
//非零即真
int res = strcmp(t1->idText.c_str(), t2->idText.c_str());
if (res < 0)
{
return true;
}
return false;
}
void main()
{
const int arraySize = 5;
TableItem items[arraySize];
items[0].idText="1";
items[0].positionText="10";
items[1].idText="2";
items[1].positionText="20";
items[2].idText="3";
items[2].positionText="30";
items[3].idText="1";
items[3].positionText="40";
items[4].idText="2";
items[4].positionText="50";
typedef std::multiset<TableItem *, CompareIDText> Tables;
Tables tables;
for(int i=0; i<arraySize; ++i)
{
tables.insert(&items[i]);
}
Tables::iterator ite = tables.begin();
Tables::iterator iteEnd = tables.end();
TableItem * tItem;
for(int j=1 ;ite!=iteEnd; ++ite, ++j)
{
tItem = *ite;
std::cout << tItem->idText << std::endl;
}
}
输出结果
1
1
2
2
3
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- hzar.cn 版权所有 赣ICP备2024042791号-5
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务