• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            飯中淹的避難所~~~~~

            偶爾來(lái)避難的地方~

              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              94 隨筆 :: 0 文章 :: 257 評(píng)論 :: 0 Trackbacks

            04 2007 檔案

                 摘要: 這個(gè)方法可以實(shí)現(xiàn)按照統(tǒng)一的接口來(lái)調(diào)用類成員函數(shù),或者靜態(tài)函數(shù)和非類成員函數(shù). 主要原理很簡(jiǎn)單, 就是保存類對(duì)象指針和函數(shù)指針, 需要調(diào)用的時(shí)候就根據(jù)類對(duì)象指針是否為空來(lái)使用不同的方式調(diào)用函數(shù).
            首先, 我們需要一個(gè)把成員函數(shù)指針轉(zhuǎn)化成void *的東西..(強(qiáng)制轉(zhuǎn)換似乎是不行的), 因?yàn)槲覀冃枰殉蓡T函數(shù)指針保存起來(lái), 又不想讓用戶寫函數(shù)指針類型描述, 那只能轉(zhuǎn)換成void*比較方便.
            這里我們使用 聯(lián)合地址轉(zhuǎn)換 的方法.

            template
            struct _T2T{
            union {
            T1 _tv1;
            T2 _tv2;
            };
            };

            template
            inline T1 t2t( T2 tv2 )
            {
            typedef struct _T2T * PT2T;
            PT2T pt = (PT2T)&tv2;
            ret  閱讀全文
            posted @ 2007-04-23 14:44 飯中淹 閱讀(3507) | 評(píng)論 (12)  編輯

                 摘要: 在使用C++編程的過(guò)程中, 有時(shí)候,我們可能會(huì)遇到需要構(gòu)造很多重復(fù)性的參數(shù)的地方
            比如
            int p1, int p2, int p3, int p4

            這樣的參數(shù)序列, 為了方便和簡(jiǎn)化這種重復(fù)性勞動(dòng),我在工作中使用了下面這些構(gòu)造參數(shù)表的宏
            現(xiàn)在共享出來(lái)希望對(duì)大家有所幫助  閱讀全文
            posted @ 2007-04-18 17:57 飯中淹 閱讀(1891) | 評(píng)論 (4)  編輯

                 摘要: 1- 注意文件名的大小寫, 這個(gè)在移植到 LINUX 這種文件系統(tǒng)區(qū)分名字大小寫的系統(tǒng)上尤其重要.
            2- 同樣的,注意文件名大小寫的同時(shí),也應(yīng)該注意避免在區(qū)分大小寫的系統(tǒng)上創(chuàng)建大小寫不同,但名字相同的代碼文件.
            3- 保證每個(gè)代碼文件(CPP,H)的結(jié)尾都有單獨(dú)的沒(méi)有任何內(nèi)容的一行, 這在CC/GCC/G++編譯器下能減少很多警告.
            4- 同1 和2 項(xiàng)所說(shuō), #include 包含頭文件的時(shí)候一定要注意文件名的大小寫, VC++總是把大小寫搞亂, 不得不猜想微軟是不是想要阻撓跨平臺(tái)的軟件開(kāi)發(fā)...  閱讀全文
            posted @ 2007-04-18 12:55 飯中淹 閱讀(2398) | 評(píng)論 (4)  編輯

                 摘要: 在做跨平臺(tái)的網(wǎng)絡(luò)數(shù)據(jù)傳輸和文件數(shù)據(jù)轉(zhuǎn)換和移植的時(shí)候,經(jīng)常會(huì)碰到CPU字節(jié)序不同導(dǎo)致的各種各樣的問(wèn)題.
            于是,在編寫平臺(tái)無(wú)關(guān),字符編碼無(wú)關(guān)的要求之外,又有一個(gè)新的對(duì)跨平臺(tái)編碼的要求,那就是字節(jié)序無(wú)關(guān).
            其實(shí)要實(shí)現(xiàn)這個(gè)也不難, 只要能夠檢測(cè)和轉(zhuǎn)換字節(jié)序, 就完全可以實(shí)現(xiàn).
            下面提供各一種方法來(lái)解決這兩個(gè)問(wèn)題.   閱讀全文
            posted @ 2007-04-18 12:21 飯中淹 閱讀(2341) | 評(píng)論 (1)  編輯

            posted @ 2007-04-17 21:21 飯中淹 閱讀(819) | 評(píng)論 (4)  編輯

                 摘要: <2007-04-17>
            1- 插件導(dǎo)出函數(shù)設(shè)計(jì)成C形式的也就是在函數(shù)前加 extern "C",這樣保證動(dòng)態(tài)連接的時(shí)候不會(huì)出現(xiàn)找不到名字的情況.
            2- 一定要保證代碼絕緣,中間接口一定要傳遞NATURAL類型或者純虛指針,否則會(huì)因?yàn)橐恍┘?xì)微的類版本不同而導(dǎo)致很多很多的運(yùn)行錯(cuò)誤和異常.
            3- DLL中分配出來(lái)的內(nèi)存,一定要在DLL內(nèi)部釋放,否則會(huì)導(dǎo)致意想不到的情況.  閱讀全文
            posted @ 2007-04-17 20:46 飯中淹 閱讀(2632) | 評(píng)論 (7)  編輯

                 摘要: 1- 不要為每個(gè)小數(shù)據(jù)包發(fā)送一個(gè)IOCP請(qǐng)求,這樣很容易耗盡IOCP的內(nèi)部隊(duì)列.....從而產(chǎn)生10055錯(cuò)誤.

            2- 不要試圖在發(fā)送出IOCP請(qǐng)求之后,收到完成通知之前修改請(qǐng)求中使用的數(shù)據(jù)緩沖的內(nèi)容,因?yàn)樵谶@段時(shí)間,系統(tǒng)可  閱讀全文
            posted @ 2007-04-14 08:44 飯中淹 閱讀(11421) | 評(píng)論 (16)  編輯

            亚洲色欲久久久综合网| 99久久精品国产一区二区蜜芽| 久久久久国产一区二区| 久久久青草久久久青草| 久久人人爽人人精品视频| 欧美激情一区二区久久久| 久久久精品人妻一区二区三区四| 情人伊人久久综合亚洲| 国产激情久久久久久熟女老人 | 欧美熟妇另类久久久久久不卡| 久久久久久亚洲Av无码精品专口| 91麻豆精品国产91久久久久久| 久久人妻AV中文字幕| 国产精品99久久精品| 伊人久久成人成综合网222| 久久精品国产亚洲AV无码偷窥| 久久精品国产只有精品66 | 伊人久久精品线影院| 久久SE精品一区二区| 日韩精品久久久久久| 久久亚洲AV成人无码国产| 国产叼嘿久久精品久久| 久久国产乱子伦免费精品| 老男人久久青草av高清| 久久久久久久久久免免费精品| 99精品国产在热久久| 新狼窝色AV性久久久久久| 思思久久99热只有频精品66| 久久精品国产亚洲5555| 青青青国产成人久久111网站| 无码国内精品久久人妻| 久久精品中文无码资源站| 亚洲欧洲久久av| 久久久久亚洲AV片无码下载蜜桃| 久久久WWW免费人成精品| 久久九九久精品国产免费直播| 色综合合久久天天综合绕视看| 熟妇人妻久久中文字幕| 国产精品美女久久久久久2018| 久久综合香蕉国产蜜臀AV| 久久人人爽人人爽人人AV东京热 |