?? p228.cpp
字號:
#include "iostream.h" template <class Type> class DataList; template <class Type> class Node { //數據表中結點類的定義 friend class DataList<Type>; public: Node ( ) : key ( 0 ) { } //構造函數 Node ( const Type & value ) : key ( value ) { } //構造函數 Type getKey ( ) const { return key; } //讀取關鍵碼 void setKey ( Type k ) { key = k; } //修改關鍵碼 friend ostream &operator << (ostream &OutStream, const Node<Type> & OutNode ); friend istream & operator >> ( istream & InStream, Node<Type> & InNode ); private: Type key; //關鍵碼域 // other; //其他域 }; template <class Type> class DataList { //數據表類定義 public: DataList ( int sz = 10 ) : ArraySize (sz), Element (new Node<Type>[sz+1]) { } virtual ~DataList ( ) { delete [ ] Element; } int GetSize() {return CurrentSize;} friend ostream &operator << (ostream &OutStream, const DataList<Type> & OutList ); friend istream & operator >> ( istream & InStream, DataList<Type> & InList ); protected: Node<Type> *Element; //數據表中存儲數據的數組 int ArraySize, CurrentSize; //數組最大長度和當前長度 }; template <class Type> ostream & operator << ( ostream & OutStream, const Node<Type> & OutNode ) { OutStream << OutNode.key; return OutStream; } template <class Type> istream & operator >> ( istream & InStream, Node<Type> & InNode ) { InStream >> InNode.key; return InStream; } template <class Type> ostream & operator << ( ostream & OutStream, const DataList<Type> & OutList ) { OutStream << "Array Contents : \n"; //輸出表的所有表項到OutStream for ( int i = 1; i <=OutList.CurrentSize; i++ ) OutStream << OutList.Element[i] << ' '; OutStream << endl; //輸出表的當前長度到OutStream OutStream << "Array Current Size : " << OutList.CurrentSize << endl; return OutStream; } template <class Type> istream & operator >> ( istream & InStream, DataList<Type> & InList ) { cout << "Enter array Current Size : "; InStream >> InList.CurrentSize; //從Instream輸入表的當前長度 cout << "Enter array elements : \n"; for ( int i=1; i <=InList.CurrentSize; i++ ) //從Instream輸入表的全部表項 { cout << "Element " << i << " : "; InStream >> InList.Element[i]; } return InStream; }
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -