• <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>

            lantionzy

            coding
            posts - 10, comments - 39, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            2009年10月22日

                 摘要: int main()
            {
            string str("Hello World!\n");
            cout << "The size of " << str << "is " << str.size()
            << " characters, including the newline" << endl;
            return 0;
            }
            從邏輯上來講,size() 成員函數(shù)似乎應該返回整形數(shù)值,或是無符號整數(shù)。但事實上,size 操作返回的是 string::size_type 類型的值。
            string 類類型和許多其他庫類型都定義了一些配套類型(companion type)。通過這些配套類型,庫類型的使用就能與機器無關(guān)(machine-independent)。size_type 就是這些配套類型中的一種。它定義為與 unsigned 型(unsigned int 或 unsigned long)具有相同的含義,而且可以保證足夠大能夠存儲任意 string 對象的長度。為了使  閱讀全文

            posted @ 2009-10-22 09:10 lantionzy 閱讀(12145) | 評論 (8)編輯 收藏

            2009年10月20日

                 摘要: 本示例的基本實現(xiàn)過程是:客戶端通過鍵盤輸入數(shù)據(jù),數(shù)據(jù)被發(fā)送到服務器。后者接收到數(shù)據(jù)后,需要進行判斷,如果發(fā)來的數(shù)據(jù)串為“quit”,表明對方向退出聊天過程,于是服務器端也發(fā)送字符串“quit”,聊天過程終止;否則將接收到的信息和對方的IP地址進行格式化后,在屏幕上輸出。同樣在客戶端也需要進行相應的判斷和輸出。
            首先編寫服務器端程序,實現(xiàn)代碼如下:
            #pragma comment(lib,"ws2_32.lib")
            #include
            #include   閱讀全文

            posted @ 2009-10-20 17:07 lantionzy 閱讀(2613) | 評論 (12)編輯 收藏

            2009年10月19日

                 摘要: 針對示例程序,說明幾個用VC++基于TCP/UDP網(wǎng)絡(luò)編程應注意的幾個地方:
            1、基于TCP和基于UDP的網(wǎng)絡(luò)應用程序在發(fā)送和接收數(shù)據(jù)時使用的函數(shù)是不一樣的:前者使用send和recv,后者使用sendto和recvfrom。
            2、由于程序中使用了Winsock庫中的函數(shù),這里需要為程序鏈接相應的.lib文件:ws2_32.lib。
            3、我們知道,Windows網(wǎng)絡(luò)編程至少需要兩個頭文件:winsock2.h和windows.h,而在WinSock2.0之前還存在一個老版本的winsock.h。正是這三個頭文件的包含順序,導致了問題的出現(xiàn)...
              閱讀全文

            posted @ 2009-10-19 16:23 lantionzy 閱讀(2118) | 評論 (1)編輯 收藏

                 摘要: 注:本系列文章適合初學網(wǎng)絡(luò)編程的讀者
            對于基于UDP的服務器來說,就是一個客戶端,不用建立監(jiān)聽或者說建立連接,直接調(diào)用recvfrom函數(shù)接收數(shù)據(jù)。注意,在編寫基于UDP的網(wǎng)絡(luò)程序時,在接收數(shù)據(jù)時,使用的是recvfrom函數(shù)。而前面基于TCP的服務器端程序接收數(shù)據(jù)時使用的是recv函數(shù)。
            客戶端也可以直接發(fā)送數(shù)據(jù),這里需要調(diào)用sendto函數(shù)而不是send函數(shù)。

            新建一個空的Win32 Console Application類型的工程,在其中添加實現(xiàn)基于UDP的服務器端程序的代碼UDPSrv.cpp:  閱讀全文

            posted @ 2009-10-19 15:23 lantionzy 閱讀(2013) | 評論 (3)編輯 收藏

                 摘要: 注:本系列文章適合初學網(wǎng)絡(luò)編程的讀者

            網(wǎng)絡(luò)程序的實現(xiàn)可以有很多方式,Windows Socket就是其中一種比較簡單的方法。socket是連接應用程序與網(wǎng)絡(luò)驅(qū)動程序的橋梁,socket在應用程序中創(chuàng)建,通過綁定操作與驅(qū)動程序建立關(guān)系。此后,應用程序送給socket的數(shù)據(jù),由socket交給驅(qū)動程序向網(wǎng)絡(luò)上發(fā)送出去。計算機從網(wǎng)絡(luò)上收到與該socket綁定的IP地址和端口號相關(guān)的數(shù)據(jù)后,由驅(qū)動程序交給socket,應用程序便可從該socket中提取接收到的數(shù)據(jù)。
            下面通過一個簡單的實例來講述基于TCP的socket編程的通信流程。其中服務器端程序?qū)崿F(xiàn)代碼TCPSrv.cpp如下:  閱讀全文

            posted @ 2009-10-19 14:36 lantionzy 閱讀(2145) | 評論 (2)編輯 收藏

            2009年10月15日

                 摘要: 如果應用程序的另一個實例影響到可選(非首要)功能,應用程序啟動時必須:
            1)檢測是否有用戶正在運行該應用程序。
            2)阻止所有有問題的功能。
            3)通知當前用戶無法使用特定功能的原因。

            下面給出一個實例:  閱讀全文

            posted @ 2009-10-15 13:59 lantionzy 閱讀(2199) | 評論 (2)編輯 收藏

                 摘要: 一、只讀算法

            1、使用兩個迭代器和一個值調(diào)用 find 函數(shù),檢查兩個迭代器實參標記范圍內(nèi)的每一個元素。只要找到與給定值相等的元素,find 就會返回指向該元素的迭代器。如果沒有匹配的元素,find 就返回它的第二個迭代器實參,表示查找失敗。于是,只要檢查該函數(shù)的返回值是否與它的第二個實參相等,就可得知元素是否找到了。
            int search_value = 42;
            // call find to see if that value is present
            vector::const_iterator result = find(vec.begin(), vec.end(), search_value);
            // report the result
            cout << "The value " << search_value

            << (result == vec.end()? " is not present" : " is prese  閱讀全文

            posted @ 2009-10-15 09:42 lantionzy 閱讀(1505) | 評論 (2)編輯 收藏

                 摘要: 標準庫定義了三種順序容器類型:vector、list 和 deque(雙端隊列“double-ended queue”)。它們的差別在于訪問元素的方式,以及添加或刪除元素相關(guān)操作的運行代價。

            1、每種順序容器都提供了一組有用的類型定義以及以下操作:

            在容器中添加元素。

            在容器中刪除元素。

            設(shè)置容器大小。

            (如果有的話)獲取容器內(nèi)的第一個和最后一個元素。

            2、一些關(guān)鍵概念和難點:

            vector 對象動態(tài)增長:  閱讀全文

            posted @ 2009-10-15 08:19 lantionzy 閱讀(1685) | 評論 (1)編輯 收藏

                 摘要: 類的成員函數(shù)具有一個附加的隱含形參,即指向該類對象的一個指針。這個隱含形參命名為 this,與調(diào)用成員函數(shù)的對象綁定在一起。成員函數(shù)不能定義 this 形參,而是由編譯器隱含地定義。成員函數(shù)的函數(shù)體可以顯式使用 this 指針,但不是必須這么做。如果對類成員的引用沒有限定,編譯器會將這種引用處理成通過 this 指針的引用。

            盡管在成員函數(shù)內(nèi)部顯式引用 this 通常是不必要的,但有一種情況下必須這樣做:當我們需要將一個對象作為整體引用而不是引用對象的一個成員時。最常見的情況是在這樣的函數(shù)中使用 this:該函數(shù)返回對調(diào)用該函數(shù)的對象的引用。  閱讀全文

            posted @ 2009-10-15 08:13 lantionzy 閱讀(1889) | 評論 (0)編輯 收藏

            2009年10月14日

                 摘要: 在項目開發(fā)中,經(jīng)常要求系統(tǒng)在同一時刻在同一臺機器上只能運行一個實例,可以通過這種方式實現(xiàn)
            在InitInstance()函數(shù)中添加如下代碼:  閱讀全文

            posted @ 2009-10-14 17:40 lantionzy 閱讀(2983) | 評論 (8)編輯 收藏

            伊人久久大香线蕉综合5g| 久久永久免费人妻精品下载| 国产精品狼人久久久久影院 | 国产巨作麻豆欧美亚洲综合久久 | 亚洲国产精品成人久久| 7777久久亚洲中文字幕| 久久99国产一区二区三区| 国内精品九九久久精品| 久久精品无码免费不卡| 人妻少妇久久中文字幕| 久久国产亚洲精品| 97精品国产97久久久久久免费| 久久强奷乱码老熟女网站| 久久国产影院| 久久精品国产免费| 亚洲AV无码久久精品狠狠爱浪潮 | 国产福利电影一区二区三区久久久久成人精品综合 | 狠狠色婷婷久久一区二区 | 伊人色综合久久| 久久99亚洲网美利坚合众国| 综合久久精品色| 久久男人中文字幕资源站| 久久最近最新中文字幕大全| 99久久超碰中文字幕伊人| 中文字幕日本人妻久久久免费 | 亚洲国产成人久久综合碰| 久久久精品视频免费观看| 免费观看成人久久网免费观看| www性久久久com| 人人狠狠综合久久88成人| 日日噜噜夜夜狠狠久久丁香五月| 一级做a爰片久久毛片毛片| 欧洲性大片xxxxx久久久| 少妇被又大又粗又爽毛片久久黑人 | 久久精品人人做人人爽97| 亚洲午夜久久久影院伊人| 日本五月天婷久久网站| 久久精品国产亚洲AV不卡| 中文字幕乱码久久午夜| 亚洲国产精品无码久久SM| 性高湖久久久久久久久|