To Terry, 上面的文章不是已經(jīng)解釋得很清楚了嗎。序列化的例子就可以解決你的問(wèn)題。
Exceptional C++ Style上譯成 "定位new" 感覺比較合適.
re: 跨平臺(tái)的線程代碼 Squirrel 2006-05-16 19:33
Boost 也有支持的,快成標(biāo)準(zhǔn)了吧。
re: Windows下 ACE中的地址重用 Squirrel 2006-05-16 14:02
這一點(diǎn)在ACE 5.5 中并沒改變。
ACE 5.5好像有些奇怪,ACE_Wrappers中有了VS.NET2005的解決方案文件。但是將以前工程文件中對(duì)MFC庫(kù)支持的設(shè)置去除了。取而代之的是
Makefile Project Creator (MPC)
這個(gè)東西我還不太會(huì)用,有熟悉的朋友不妨介紹一下,謝謝先。
iostream 是輸入輸出流。
控制臺(tái)輸入輸出(cout ,cin)是由該類派生出來(lái)的。
重載流操作以后,對(duì)一些常見流,如fstream 文件流、stringstream字符串流都有效。
也就是說(shuō),你可以把對(duì)象導(dǎo)到控制臺(tái)、文件、內(nèi)存等許多地方。
他的這個(gè)例子里,重載流操作和boost的序列化沒有任何關(guān)系。不實(shí)現(xiàn)重載流操作,序列化照樣工作。
re: WinFX之HelloWorld Squirrel 2006-04-20 19:55
M$的東西真是越做越大,太恐怖了。
那么,使用這樣不是更好?
SetString( const std::string & str ){
m_str = str;
}
有這樣一個(gè)關(guān)于stringstream的問(wèn)題。
將一系列以string 和unsigned long 組成的序列放入流中,如何將它們還原出來(lái)?(string中允許有空格)
#include "stringstream"
#include "iostream"
using namespace std;
void main()
{
stringstream ss;
string item1;
unsigned long item2;
ss << "Hello World" <<endl << 80 <<endl
<< "Hi Jack" << endl << 90 <<endl
<< "Hello China" << endl << 100 <<endl;
while ( ss >> item1 >> item2 )
{
cout << item1 << "\t" << item2 <<endl;
}
}
上面的程序打印不出來(lái)任何東西,因?yàn)榭崭袷亲鳛榱鞯姆指舴?
不知道大家有什么好的辦法?
stringstream,我現(xiàn)在常用它來(lái)做字符串?dāng)?shù)組的存取。喜歡將它用作函數(shù)的輸出參數(shù),來(lái)得到字符串列表,不知道這樣做是否合適,似乎用vector來(lái)做更好些。