Time of Update: 2018-12-03
樹形控制項可以用於樹形的結構,其中有一個根接點(Root)然後下面有許多子結點,而每個子結點上有允許有一個或多個或沒有子結點。MFC中使用CTreeCtrl類來封裝樹形控制項的各種操作。通過調用BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );建立一個視窗,dwStyle中可以使用以下一些樹形控制項的專用風格:TVS_HASLINES 在父/子結點之間繪製連線
Time of Update: 2018-12-03
//GET 方法#include <Windows.h>#include <WinInet.h>#include <stdio.h>#pragma comment(lib, "WinInet.lib")int main(){ HINTERNET hInternet = InternetOpenA("Testing", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0); //初始化WinINet HINTERNET
Time of Update: 2018-12-03
標準的udp用戶端開了套介面後,一般使用sendto和recvfrom函數來發資料,最近看到ntpclient的代碼裡面是使用send函數直接法的,就分析了一下,原來udp發送資料有兩種方法供大家選用的,順便把udp的connect用法也就解釋清楚了。方法一: socket----->sendto()或recvfrom() 方法二:
Time of Update: 2018-12-03
在使用OpenGL畫圖的過程中,由於OpenGL不支援直接繪製凹多邊形,所以我們通常需要先將凹多邊形轉化為一組三角形下面就是一個三角化多邊形的演算法1) 用單向迴圈鏈表儲存多邊形頂點,並計算這個鏈表中每一個頂點的凸凹性。2) 在迴圈鏈表中順序取三個結點P、Q、R ,如果Q 為凸點,並且由P、Q、R 所構成的三角形PQR不包含多邊形上其他頂點,則計算△PQR 的特徵角(三角形內最小的角)。求出所有這樣的三角形,從中選擇特徵角最大的△PQR ,儲存該三角形,並從鏈表中刪去結點Q。3)
Time of Update: 2018-12-03
class MyString{public: MyString(); MyString(const char* pString); MyString(const MyString& rhs); MyString& operator = (const MyString& rhs); ~MyString();private: char*
Time of Update: 2018-12-03
HBRUSH CStadus::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // TODO: Change any attributes of the DC here if (nCtlColor == CTLCOLOR_STATIC) {
Time of Update: 2018-12-03
紅/黑樹狀結構是一種自平衡二叉尋找樹,是在電腦科學中用到的一種資料結構,典型的用途是實現關聯陣列。它是在1972年由Rudolf Bayer發明的,他稱之為"對稱二叉B樹",它現代的名字是在 Leo J. Guibas 和 Robert Sedgewick 於1978年寫的一篇論文中獲得的。它是複雜的,但它的操作有著良好的最壞情況已耗用時間,並且在實踐中是高效的: 它可以在O(log n)時間內做尋找,插入和刪除,這裡的n
Time of Update: 2018-12-03
原型int select(int nfds,fd_set* readfds,fd_set* writefds,fd_set* exceptfds,const struct timeval* timeout);nfds:本參數忽略,僅起到相容作用。 readfds:(可選)指標,指向一組等待可讀性檢查的套介面。 writefds:(可選)指標,指向一組等待可寫性檢查的套介面。 exceptfds:(可選)指標,指向一組等待錯誤檢查的套介面。
Time of Update: 2018-12-03
//hroot:待遍曆樹的根節點,strname:待尋找節點名稱HTREEITEM finditem(HTREEITEM hroot, CString strname) { HTREEITEM hfind; //表明此樹是空樹,直接返回NULL if(hroot== NULL) return
Time of Update: 2018-12-03
最近去一家牛逼的公司面試,被問到tcp和udp能否發送0位元組的資料包,結果會怎樣,可惜我孤陋寡聞沒答上來,回來趕緊測試,發現結果如下:1、tcp和udp都能發送0位元組的資料包,windows下通過GetLastError查看傳回值為02、tcp發送0位元組的資料包後,接收方調用recv不會接收到該資料包3、udp發送0位元組的資料包後,接收方調用recvfrom能夠接收到該資料包
Time of Update: 2018-12-03
一、前言 測試驅動開發(TDD)是以測試作為開發過程的中心,它堅持,在編寫實際代碼之前,先寫好基於產品代碼的測試代碼。開發過程的目標就是首先使測試能夠通過,然後再最佳化設計結構。測試驅動開發式是極限編程的重要組成部分。XUnit,一個基於測試驅動開發的測試架構,它為我們在開發過程中使用測試驅動開發提供了一個方便的工具,使我們得以快速的進行單元測試。XUnit的成員有很多,如JUnit,PythonUnit等。今天給大家介紹的CppUnit即是XUnit家族中的一員,它是一個專門面向C++的測試
Time of Update: 2018-12-03
最近在學習libcurl,並利用它提交POST請求,可是返回的響應總是無從驗證該次POST請求是否成功提交了。1. 先看下根據firebug提交的一次成功的請求,這裡以login我喜歡上的xiami為例,嘻嘻~ 1.1 本次POST請求的HTTP互動 1.2 POST 1.3 經server端redirect的GET 2. OK,接下來看下使用libcurl向xiami發送POST請求 2.1
Time of Update: 2018-12-03
#include <list>#include <vector>#include <Windows.h>using namespace std;int main(int argc, char* argv[]){ list<int> listValue; vector<int> vecValue; DWORD d1 = GetTickCount(); for (int i = 0; i < 100000;
Time of Update: 2018-12-03
Herm實現了一個Dispatcher來分發協議訊息和程式中的自動事件。Dispatcher管理一個泛型的處理器Handler,不同的需求可以實現不通的Handler。Herm從通用性的角度,實現了支援IMsgHandler&IEvtHandler,分別支援協議訊息和應用事件的分發處理器。 struct IMsgHandler { virtual void Handle(const char* buf, int len, const
Time of Update: 2018-12-03
我已經有兩次面試被問到iocp的工作原理了(作業系統的工作原理,不是函數的工作原理),所以覺得很有必要把這個寫下來。網上找了半天,寫的都是一些函數的實現原理,沒提到重點,最近一次面試中技術官告訴我《windows進階編程指南》這本書有提到過,我回來查看了一下,在614頁的確有比較詳細的講解,有點不太明白,先把原文引出來吧:總結:完成連接埠的目標是使在釋放線程(運行中的線程)列表中的線程數與它被建立時指定的並發線程數(CreateIoCompletionPort的最後一個參數,一般為cpu個數)相
Time of Update: 2018-12-03
TCP/IP協議中,無論發送多少資料,總是要在資料前面加上協議頭,同時,對方接收到資料,也需要發送ACK表示確認。為了儘可能的利用網路頻寬,TCP總是希望儘可能的發送足夠大的資料。(一個串連會設定MSS參數,因此,TCP/IP希望每次都能夠以MSS尺寸的資料區塊來發送資料)。Nagle演算法就是為了儘可能發送大塊資料,避免網路中充斥著許多小資料區塊。Nagle演算法的基本定義是任意時刻,最多隻能有一個未被確認的小段。
Time of Update: 2018-12-03
在一次面試中突然被問到這個問題,當時還真不明白,回來在網上找到了說法: 因為malloc/free,new/delete都是調用HeapAlloc/HeapFree來實現來實現記憶體配置是釋放的。查看Windows的API可以看到,這兩個函數都需要一個Heap的HANDLE做為參數。CRT庫採用了全域變數來儲存這個HANDLE。如果是CRT靜態連結,CRT庫的代碼會連結到各個DLL中去,也包括這個全域變數。也就是說,每個使用CRT靜態連結的dll中都有一個自己的全域堆控制代碼,他們自己都在這個控
Time of Update: 2018-12-03
論函數呼叫慣例 在C語言中,假設我們有這樣的一個函數: int function(int a,int b) 調用時只要用result =
Time of Update: 2018-12-03
我提供給大家一個鑒別真正牛奶生產日期方法,可以防止上當買到到期牛奶,這就能夠保證您的家人健康。一般牛奶封裝上會有一個生產日期(那是給消費者看的)。還有一個英文和數字組成的暗號,這組暗碼才是真正的牛奶生產日期。那麼怎麼才能識別企業的暗號瞭解到商品牛奶的真正生產日期呢?牛奶的封裝上一般印刷:生產日期:08 05 10 HDC8 H ,其中: 生產日期:08 05 10(給消費者看的),大家都能看懂; 暗碼:HDC8 H
Time of Update: 2018-12-03
轉載 http://xiaomin1978.blog.51cto.com/6098465/1033008課程內容:搭建AS3開發環境,寫第一個AS3程式課程目的:先入為主知識點:1. 開發環境配置2. 使用FlashDevelop建立AS3工程3. 在FlashDevelop中繪製直線主要步驟:1.