• <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>
            隨筆-145  評(píng)論-173  文章-70  trackbacks-0
            利用AfxBeginThread函數(shù)也可以實(shí)現(xiàn)創(chuàng)建一個(gè)線程,先貼上下面的代碼:
            UINT SubProcess(LPVOID param)
            {
                ::MessageBox((HWND)param,
            "線程啟動(dòng)","線程",MB_OK);
                
            return 0;
            }


            void CTest2Dlg::OnButton1() 
            {
                
            // TODO: Add your control notification handler code here
                HWND hWnd = GetSafeHwnd(); //獲得一個(gè)窗口的窗口句柄
                AfxBeginThread(SubProcess,hWnd); //創(chuàng)建一個(gè)新線程,返回值就是一個(gè)線程對(duì)象
            //    CDialog::OnOK();
            }


            void CTest2Dlg::OnButton2() 
            {
                
            // TODO: Add your control notification handler code here
                CDialog::OnCancel();
            }

            現(xiàn)在對(duì)于這個(gè)函數(shù),我沒(méi)有多大的疑問(wèn),在MSDN中有很詳細(xì)的解釋?zhuān)P(guān)鍵的問(wèn)題是:
            我開(kāi)始出錯(cuò)了:因?yàn)閷ubProcess設(shè)置為類(lèi)的成員函數(shù),顯示的錯(cuò)誤信息是:
            can't convert parameter 1 from unsigned int (void *);

            開(kāi)始我以為是本身函數(shù)的問(wèn)題,印象中,應(yīng)該是void *類(lèi)型才可以,現(xiàn)在這個(gè)線程函數(shù)是UINT(unsigned int類(lèi)型)
            不過(guò)后來(lái)查MSDN,發(fā)現(xiàn)僅僅只能夠是UINT類(lèi)型的返回值,規(guī)定死了。
            而且函數(shù)的原型是 UINT myThreadFun(LPVOID param)
            于是想到,放在類(lèi)中的成員函數(shù)和上面的原型是不同的,所以可能會(huì)引起錯(cuò)誤,于是去掉之后,聲明為一個(gè)單獨(dú)的函數(shù),OK。
            我的理解是:在同類(lèi),生成的就是一個(gè)對(duì)象,調(diào)用另外一個(gè)成員函數(shù),相當(dāng)于對(duì)本身的主線程操作,不安全。

            然而,通過(guò)驗(yàn)證我發(fā)現(xiàn),原因不是這個(gè),而是因?yàn)樵谄胀ǖ某蓡T函數(shù)中,隱藏有一個(gè)參數(shù)為this指針,所以,原型是不同的,要是必須聲明為類(lèi)的成員的話,可以聲明為static函數(shù),就沒(méi)有this指針,此時(shí),就不能訪問(wèn)實(shí)例成員,只能訪問(wèn)類(lèi)成員。要是想要訪問(wèn)實(shí)例成員怎么辦?聲明為友元,這樣,就可以毫無(wú)顧忌的訪問(wèn)類(lèi)的所有成員。
            至此,我們就解決了這個(gè)問(wèn)題。
            posted on 2010-02-09 11:39 deercoder 閱讀(2180) 評(píng)論(0)  編輯 收藏 引用
            久久亚洲国产欧洲精品一| 国产亚洲精久久久久久无码| 成人精品一区二区久久久| 国产成人99久久亚洲综合精品 | 日韩AV毛片精品久久久| 人妻无码中文久久久久专区| 国产成人久久精品麻豆一区| 国产一区二区三精品久久久无广告 | 亚洲AV无码久久精品成人| 99久久婷婷国产一区二区| 国产精品久久久亚洲| 久久国产视频99电影| 热99re久久国超精品首页| 亚洲国产成人乱码精品女人久久久不卡| 俺来也俺去啦久久综合网| 国产精品狼人久久久久影院| 久久人人爽人人爽人人片AV不| 狠狠色综合网站久久久久久久| 久久综合久久美利坚合众国| 久久毛片免费看一区二区三区| 日本久久久久久中文字幕| 亚洲日本va中文字幕久久| 2021久久精品免费观看| 久久精品免费观看| 久久线看观看精品香蕉国产| 亚洲精品WWW久久久久久 | 久久毛片免费看一区二区三区| 久久最近最新中文字幕大全| 久久久久女人精品毛片| 久久亚洲欧美国产精品 | 久久久99精品成人片中文字幕| 久久婷婷五月综合国产尤物app | 国产V亚洲V天堂无码久久久| 亚洲AV日韩AV永久无码久久 | 波多野结衣中文字幕久久| 欧洲成人午夜精品无码区久久| 久久精品国产AV一区二区三区| 色天使久久综合网天天| 区久久AAA片69亚洲| 模特私拍国产精品久久| 亚洲精品乱码久久久久久自慰|