• <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++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            10 2009 檔案

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

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

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

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

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

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

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

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

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

                 摘要: 注:本系列文章適合初學網絡編程的讀者

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

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

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

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

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

                 摘要: 一、只讀算法

            1、使用兩個迭代器和一個值調用 find 函數,檢查兩個迭代器實參標記范圍內的每一個元素。只要找到與給定值相等的元素,find 就會返回指向該元素的迭代器。如果沒有匹配的元素,find 就返回它的第二個迭代器實參,表示查找失敗。于是,只要檢查該函數的返回值是否與它的第二個實參相等,就可得知元素是否找到了。
            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 閱讀(1486) | 評論 (2)  編輯 |

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

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

            在容器中添加元素。

            在容器中刪除元素。

            設置容器大小。

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

            2、一些關鍵概念和難點:

            vector 對象動態增長:  閱讀全文

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

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

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

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

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

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

            91久久九九无码成人网站 | 久久久久亚洲AV无码麻豆| 狠狠色丁香婷综合久久| 一本久道久久综合狠狠爱| 日日狠狠久久偷偷色综合96蜜桃| 99热都是精品久久久久久| 久久精品国产一区| 日韩一区二区久久久久久| 久久精品国产影库免费看| 国产叼嘿久久精品久久| 国产一区二区三精品久久久无广告| 久久综合丝袜日本网| 国产精品伦理久久久久久| 久久天天日天天操综合伊人av| 久久99国产精品成人欧美| 久久久中文字幕日本| 日韩欧美亚洲综合久久| 久久这里只有精品首页| 久久久久亚洲AV无码永不| 日本三级久久网| 无码乱码观看精品久久| 色综合久久久久久久久五月| 九九精品99久久久香蕉| 激情五月综合综合久久69| 久久伊人五月丁香狠狠色| 97久久天天综合色天天综合色hd | 久久er99热精品一区二区| 久久综合中文字幕| 久久人妻AV中文字幕| 久久久久久久综合日本亚洲| 久久精品中文字幕一区| 久久综合88熟人妻| 国产ww久久久久久久久久| 久久99精品久久久大学生| 亚洲午夜久久久精品影院| 久久婷婷五月综合色奶水99啪| 国产精品久久午夜夜伦鲁鲁| 久久久久综合国产欧美一区二区 | 欧美日韩精品久久久久| 日本精品久久久久中文字幕8 | 一本一本久久a久久综合精品蜜桃|