資源簡介
將數據能夠在TCP中進行傳輸的兩種方法
1.直接拷貝struct就可以了;
2.序列化。
拷貝Struct存在的問題
1.不能應付可變長類型的數據,比如STL中的那些容器,當然,STL的容器歸根到底就是一個class,他們的長度都是不確定的;
2.內存對齊的問題,Windows默認的對齊是4字節,如果不去刻意關閉掉對齊的話,那么可能會多出不少沒必要的字節數,但是如果關閉了,內存拷貝又會慢一些。
序列化是怎么序列化的?
其實很簡單,我們使用一個uint8類型的數組,假設我們這里有一個uint16類型的數據,那么我們就把它拷貝進去uint8的數組里面,那么它就占了兩個元素。這是最基本的規則。具
代碼片段和文件信息
#include?“stdafx.h“
#include?“TCPClient.h“
int?_tmain(int?argc?_TCHAR*?argv[])
{
TCPClient?client;
client.run();
system(“pause“);
return?0;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????10024??2011-05-07?00:41??testByteBuffer\Common\ByteBuffer.h
?????文件???????1307??2011-05-07?00:48??testByteBuffer\Common\NetDefine.h
?????文件????????499??2011-05-07?00:34??testByteBuffer\Common\TypeDefine.h
?????文件????????162??2011-04-25?00:40??testByteBuffer\testTCPClient\testTCPClient\main.cpp
?????文件????????217??2010-06-10?20:29??testByteBuffer\testTCPClient\testTCPClient\stdafx.cpp
?????文件????????854??2011-04-25?01:06??testByteBuffer\testTCPClient\testTCPClient\stdafx.h
?????文件???????3364??2011-05-07?00:55??testByteBuffer\testTCPClient\testTCPClient\TCPClient.cpp
?????文件????????608??2011-05-07?00:46??testByteBuffer\testTCPClient\testTCPClient\TCPClient.h
?????文件???????4201??2011-05-07?00:32??testByteBuffer\testTCPClient\testTCPClient\testTCPClient.vcproj
?????文件???????1000??2011-04-25?00:38??testByteBuffer\testTCPClient\testTCPClient.sln
?????文件????????221??2011-05-04?23:27??testByteBuffer\testTCPServer\testTCPServer\main.cpp
?????文件????????218??2010-06-10?20:28??testByteBuffer\testTCPServer\testTCPServer\stdafx.cpp
?????文件????????922??2011-04-25?01:06??testByteBuffer\testTCPServer\testTCPServer\stdafx.h
?????文件???????3180??2011-05-07?00:54??testByteBuffer\testTCPServer\testTCPServer\TCPServer.cpp
?????文件????????647??2011-05-07?00:51??testByteBuffer\testTCPServer\testTCPServer\TCPServer.h
?????文件???????4201??2011-05-07?00:33??testByteBuffer\testTCPServer\testTCPServer\testTCPServer.vcproj
?????文件???????1000??2011-04-25?00:35??testByteBuffer\testTCPServer\testTCPServer.sln
?????目錄??????????0??2011-05-07?00:58??testByteBuffer\testTCPClient\testTCPClient
?????目錄??????????0??2011-05-07?00:58??testByteBuffer\testTCPServer\testTCPServer
?????目錄??????????0??2011-05-07?00:48??testByteBuffer\Common
?????目錄??????????0??2011-05-07?00:58??testByteBuffer\testTCPClient
?????目錄??????????0??2011-05-07?00:58??testByteBuffer\testTCPServer
?????目錄??????????0??2011-04-25?00:58??testByteBuffer
-----------?---------??----------?-----??----
????????????????32625????????????????????23
- 上一篇:軟件工程開發文檔UML
- 下一篇:附和導線近似平差計算
評論
共有 條評論