国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

在CB中實現流類的版本控制

2019-11-17 05:28:51
字體:
來源:轉載
供稿:網友

  要使一個類成為流類,首先應為該類定義兩個成員函數SaveToStream 和 LoadFromStream, (如何定義請參見“流類i/o的簡化處理”) 然后在這兩個函數內考慮流的版本。示例如下:

class TSome{


PRivate:
int num;
double sum;
public:
void SaveToStream(TStream*stream)
{//函數中代碼需要參見“流類i/o的簡化處理”

TDataIO < int > (0x10001) >> stream;//存儲版本號1.1
TDataIO < int > (num) >> stream;//存儲num
TDataIO < double > (sum) >> stream;//存儲sum

}
void LoadFromStream(TStream*stream)
{


int ver=TDataIO < int > ( ) << stream;//讀取版本號
if(ver==0x10001){

num=TDataIO < int > ( ) << stream;//讀取num
sum=TDataIO < double > ( ) << stream;//讀取sum

}else if(ver==0x10002){

//這里處理另一版本....

}//end if-else

}//end LoadFrom...
//類中其它代碼 ...


};//end class

--------------------------------------------------------------------------------
當類中的成員有變動時,只需為相應的變動作記載,并賦予一個內部版本號, 在i/o函數中為每個內部版本提供讀取/存儲代碼即可。 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 娄底市| 富平县| 临沭县| 丰顺县| 海城市| 蕲春县| 崇左市| 德庆县| 杭州市| 同心县| 剑川县| 武宣县| 大石桥市| 嘉义县| 武胜县| 庆安县| 渭南市| 伊金霍洛旗| 包头市| 吉安县| 平阴县| 崇义县| 井陉县| 蕲春县| 大名县| 金山区| 东乌珠穆沁旗| 徐汇区| 辛集市| 子洲县| 黔江区| 定陶县| 屏边| 崇阳县| 平武县| 河北省| 元朗区| 井陉县| 监利县| 菏泽市| 肃南|