一個類資料型別的STL例子 (轉)
在STL中我們常見的資料型別是char int string等。若要用複雜資料型別(類型別),你必須過載必要的運算子。下例即演示了這一點:
-
#include
#include
using namespace std;// 過載 < 運算子
class CMyClass
{
public:
int x;
int y;
char z;CMyClass()
{
x = 0;
y = 0;
z = ' ';
}
~CMyClass(){};
void print(const CMyClass &CMyClass)
{
cout << CMyClass.x << ' ' << CMyClass.y << ' ' << CMyClass.z << endl;
}int operator {
if( this->x == rhs.x && this->y == rhs.y && this->z < rhs.z) return 1;
if( this->x == rhs.x && this->y < rhs.y) return 1;
if( this->x < rhs.x ) return 1;
return 0;
}
};// 必須用LIST模版類的內建SORT排序
listsortIt( list & myList)
{
myList.sort();
return myList;
}main()
{
listmyList, sortedList;
CMyClass MyClass ;MyClass.x=3;
MyClass.y=2;
MyClass.z='A';
myList.push_back(MyClass);MyClass.x=2;
myList.push_back(MyClass);MyClass.z='B';
myList.push_back(MyClass);MyClass.x=1;
MyClass.y=5;
MyClass.z='C';
myList.push_back(MyClass);list
::iterator i;
for(i=myList.begin(); i != myList.end(); ++i)
{
cout<< " ";
MyClass.print(*i);
}
cout << endl;sortedList = sortIt( myList );
cout << "Sorted: " << endl;
for(i=sortedList.begin(); i != sortedList.end(); ++i)
{
cout<< " ";
MyClass.print(*i);
}
cout << endl;return 0;
}
輸出:
-
3 2 A
2 2 A
2 2 B
1 5 CSorted:
1 5 C
2 2 A
2 2 B
3 2 A
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-998714/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- DM 類資料型別資料型別
- 資料型別,型別轉換資料型別
- 基本資料型別及其包裝類(一)資料型別
- 資料型別的轉換資料型別
- ORACLE的資料型別(轉)Oracle資料型別
- 幾個例子理解不同資料型別的堆疊記憶體處理資料型別記憶體
- 3. php資料型別、資料型別轉換PHP資料型別
- 從兩個小例子看js中的隱式型別轉換JS型別
- JS中其他資料型別轉為number資料型別的方法JS資料型別
- SQL資料型別和C#資料型別間的轉換SQL資料型別C#
- Java資料型別及型別轉換Java資料型別
- 【轉】ORACLE資料型別Oracle資料型別
- 資料型別轉換資料型別
- [轉]oracle資料型別Oracle資料型別
- JS資料型別的轉換JS資料型別
- Qt 資料型別的轉換QT資料型別
- Windows基本的資料型別 (轉)Windows資料型別
- 一、資料型別資料型別
- SAP SEGW 事物碼裡的 ABAP 型別和 EDM 型別對映的一個具體例子型別
- ORACLE中的隱式資料型別轉換(一)Oracle資料型別
- oracle中date資料型別與timestamp資料型別的轉換Oracle資料型別
- [轉]ABAP資料型別與Java資料型別的對應關係資料型別Java
- 行列轉換的一個例子
- 一個可逆加密的例子 (轉)加密
- mysql中數值型資料有哪兩個類別?MySql
- JavaScript 資料型別轉換JavaScript資料型別
- 基本資料型別轉化資料型別
- 【Java】資料型別轉換Java資料型別
- javascript資料型別轉換JavaScript資料型別
- 避免資料型別轉換資料型別
- 資料型別轉換圖資料型別
- oracle 資料型別轉換Oracle資料型別
- JS資料型別轉換JS資料型別
- JavaScript 基本資料型別(轉)JavaScript資料型別
- 資料型別及轉換資料型別
- JS裡的資料型別轉換JS資料型別
- JS 裡的資料型別轉換JS資料型別
- 資料型別的隱式轉換資料型別