• <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>
            posts - 58,  comments - 75,  trackbacks - 0
            ??????? 程序開發(fā)其實(shí)本質(zhì)上和語(yǔ)言沒有太大的關(guān)系,語(yǔ)言是一個(gè)實(shí)現(xiàn)程序的工具。程序開發(fā),有自己要解決的問題,要高效的開發(fā)程序,必須要對(duì)這些問題給一個(gè)好的解決。這也就是說可以通過很多語(yǔ)言來學(xué)習(xí)程序開發(fā)。不必太拘禮這個(gè)問題,可以用丟骰子的方法來解決選擇語(yǔ)言的問題。
            ??????? 推薦語(yǔ)言,C++或JAVA。畢竟是兩種非常流行的語(yǔ)言,學(xué)好了工作比較好找,畢竟大多數(shù)人學(xué)這玩意是為了個(gè)飯碗。相比下JAVA的市場(chǎng)好像大些(特別是在企業(yè)級(jí)信息管理市場(chǎng)),工資也比較高。JAVA還有一個(gè)好處,就是它的開發(fā)范型比較單純,概念相對(duì)好掌握。C++在系統(tǒng)開發(fā)方面的優(yōu)勢(shì)比較明顯,開發(fā)的方法靈活,對(duì)喜歡自由性格的人比較合適。C++如果能學(xué)好,對(duì)程序開發(fā)的理解將相當(dāng)?shù)纳羁蹋孟窨梢赃_(dá)到手中無劍,心中亦無劍的境界(特別是能深刻理解范型開發(fā)后)。
            ??????? 選擇一個(gè)語(yǔ)言后一定要堅(jiān)持的用下去,這個(gè)樣才能大有收獲,不要今天說什么好就學(xué)兩下,明天說什么后就學(xué)兩下,那樣學(xué)什么語(yǔ)言也沒有用。
            posted @ 2007-01-29 22:15 walkspeed 閱讀(368) | 評(píng)論 (1)編輯 收藏

            ??? 接口,通俗的來說就是定義了一組要實(shí)現(xiàn)的功能,這些功能被表現(xiàn)為一組函數(shù),
            這些函數(shù)在語(yǔ)義上給定接口實(shí)現(xiàn)類的責(zé)任。
            ??? C++中常用的定義接口的方法是純虛類。但是定義的函數(shù)卻是要確定操作類型的
            但是從接口在語(yǔ)義上的考慮,其實(shí)是不需要的。
            ??? 用模板技術(shù)來改變。
            ??? 定義一個(gè)接口類,在類中只定義接口函數(shù),這些函數(shù)是Client要使用的,這個(gè)
            類是一個(gè)模板類,如下
            ??? template< typename T >
            ??? class Interface
            ??? {
            ??? public:
            ??????? template< typename T1 >
            ??????? void Fun( const T &t );
            ???
            ??????? ......
            ??? };
            ??? 這種方式解決了接口函數(shù)被類型限制。
            ??? 模板類的參數(shù)是一個(gè)繼承類,這個(gè)繼承類完成實(shí)際的操作。實(shí)體類的定義如下
            ??? class C : public Interface< C >
            ??? {
            ??????? ......
            ??? };

            ??? 子類去一個(gè)個(gè)的實(shí)例話其實(shí)很不好,也不符合一般C++的編程方法。由于在模板
            編程的情況下,更注重的是語(yǔ)義的符合,所以可以在子類中使用重載的方法去實(shí)現(xiàn)對(duì)
            不同類型的實(shí)際處理(畢竟沒有類的編寫者知道自己這個(gè)類要處理的類型)。那么可
            以載接口類中寫些代碼,來調(diào)用子類的函數(shù),這種調(diào)用實(shí)際上在語(yǔ)義上定義了子類要
            實(shí)現(xiàn)的責(zé)任。上面的接口的定義變成下面這個(gè)樣子
            ??? template< typename T >
            ??? class Interface
            ??? {
            ??? public:
            ??????? T* This( void ) { return static_cast< T* >( this ); }

            ??????? template< typename T1 >
            ??????? void Fun( const T &t )
            ??????? {
            ??????????? this->This()->Ope( t );
            ??????? }
            ???
            ??????? ......
            ??? };
            ???
            ??? 這樣,子類只用實(shí)現(xiàn)對(duì)不同類型的處理的Ope函數(shù)了,對(duì)外的公共接口還是一樣的。
            顯現(xiàn)中要講基類編程子類的友員,Ope定義在protected或private作用域中。??

            posted @ 2007-01-13 18:06 walkspeed 閱讀(2288) | 評(píng)論 (0)編輯 收藏
            ??????? 開發(fā)方法很多,從大學(xué)中學(xué)到的瀑布式的工程方法(雖然書中有說別的方法,但其實(shí)只講了這一個(gè)方法)。這種將一切問題都確定后,生成文檔,在開始編程的方法越來越不適用了。不過我見過的公司里的管理層特喜歡用,特別是那些沒有搞過開發(fā),憑著一張嘴的管理出生的管理者。
            ??????? 世界是變化的,軟件要解決的問題也是不斷的變化(人是善變的)。
            posted @ 2006-12-18 20:51 walkspeed 閱讀(267) | 評(píng)論 (1)編輯 收藏
            ??? 類之間的通訊和定位的封裝好是頭疼呀。思考了好長(zhǎng)時(shí)間還是沒有什么好的解。
            ??? 通訊時(shí)的不通參數(shù)類型和數(shù)量,獲得響應(yīng)的實(shí)體類。
            ??? 事件,消息,命令。表面上看差不多,媽的私底下又是有差別的,封裝不通,傳遞不通。還有不通的概念定義和解釋。
            posted @ 2006-10-14 12:20 walkspeed 閱讀(232) | 評(píng)論 (1)編輯 收藏
            ??? 記得在剛開始學(xué)習(xí)C++的時(shí)候,有一條規(guī)定,就是在基類中聲明的虛函數(shù),在子類中重載時(shí)不要改變這個(gè)函數(shù)的作用域。例如在基類public中聲明的虛函數(shù),在其子類中重載時(shí)還應(yīng)該時(shí)public的。
            ??? 但我在看DirectShow的代碼中發(fā)現(xiàn)有的子類改變了父類的虛函數(shù)的作用域。先開始想,那幫人怎么會(huì)犯這么低級(jí)的錯(cuò)誤,后來一想應(yīng)該有其原因。在思考后,覺得改變了父類虛函數(shù)的作用域是一件很有趣的事情。如果子類的實(shí)例被轉(zhuǎn)換成父類,這個(gè)函數(shù)是可以調(diào)用的,而當(dāng)他是子類時(shí)是不行的。
            ??? 突然我發(fā)現(xiàn),這樣就要了一個(gè)層次的關(guān)系,在父類一層,何子類一層。當(dāng)一個(gè)用戶在不同的層次時(shí),操作的權(quán)利是不同的。它起到了某種限制。
            呵呵,好精致的玩意。
            posted @ 2006-09-15 22:13 walkspeed 閱讀(640) | 評(píng)論 (2)編輯 收藏

            ??????? 前兩兩天才開始研究XVID,下了開源的包,按網(wǎng)上寫的方法怎么也沒編譯過去,后來自己把它編出來了。現(xiàn)在寫下來與大家分享。

            ??????? VC6下面我是怎么也沒編譯成功,個(gè)人認(rèn)為在VC6下面是編譯不出來的,大家不用再試了。

            ??????? 我是用VC2003編譯出來的。下一個(gè)NASM.EXE,放到你的安裝目錄\Microsoft Visual Studio .NET 2003\Common7\Tools 下面就可以了。

            ??????? 將所有asm文件命令行中如下的語(yǔ)句
            ??????? nasm -f win32 -DPREFIX -o "$(IntDir)"\"$(InputName)".obj "$(InputPath)"
            ??????? 改為
            ??????? nasm -f win32 -DPREFIX -o $(IntDir)\$(InputName).obj $(InputPath)

            ??????? 將如下語(yǔ)句
            ??????? nasm -f win32 -DPREFIX -I"$(InputDir)"\ -o "$(IntDir)"\"$(InputName)".obj "$(InputPath)"
            ????????改為
            ????????nasm -f win32 -DPREFIX -I$(InputDir) -o $(IntDir)\$(InputName).obj $(InputPath)

            ?????????編譯就ok了

            posted @ 2006-06-13 22:41 walkspeed 閱讀(2304) | 評(píng)論 (7)編輯 收藏
            ??? 仿函數(shù)就是使對(duì)象使用行為看上去像個(gè)函數(shù)。
            ??? 函數(shù)的使用是這個(gè)樣的
            ??? Function(param1,param2,...)
            ??? 而對(duì)象的使用是這個(gè)樣的
            ??? Object.memberfunction(param1,param2...)
            ??? 而仿函數(shù)對(duì)象的使用是這個(gè)樣的
            ??? Object(param1,param2,...)
            ??? 這樣我們可以看出,從外表上看,仿函數(shù)對(duì)象和函數(shù)是一個(gè)東西。呵呵,當(dāng)然他們是不同的。他們一樣不過是在使用的外形上一樣罷了。

            ??? 一個(gè)仿函數(shù)類如下定義
            ??? class ObjectFunction
            ??? {
            ??????? .......
            ??????? public:
            ??????????? 返回的類型 operator() ([param1,param2,...]);
            ???? };

            ???? 例1
            ???? class ObjectFunction1
            ???? {
            ????????? .......
            ????????? public:
            ????????????? void operator() () { count << "No Param ObjectFuntion" << endl;
            ????? };

            ??????例2
            ????? class?ObjectFunction2
            ????? {
            ?????????? ........
            ?????????? public:
            ?????????????? bool operator() (int x)
            ?????????????? {
            ?????????????????? count << "Have Param?ObjectFuntion" << endl;
            ?????????????????? count << "This is ObjectFuntion's Param" << x << endl;

            ???????????????????return true;
            ??????????????? }
            ???????? }

            ?????????仿函數(shù)的關(guān)鍵是要實(shí)現(xiàn) operator() 運(yùn)算符。
            ?????
            posted @ 2006-03-23 23:22 walkspeed 閱讀(5709) | 評(píng)論 (7)編輯 收藏
            ??? 仿函數(shù),就是是一個(gè)類的使用看上去象一個(gè)函數(shù)。其實(shí)現(xiàn)就是類中實(shí)現(xiàn)一個(gè)operator(),這個(gè)類就有了類似函數(shù)的行為,就是一個(gè)仿函數(shù)類了。
            ??? 在我們寫代碼時(shí)有時(shí)會(huì)發(fā)現(xiàn)有些功能的實(shí)現(xiàn)的代碼,會(huì)不斷的在不同的成員函數(shù)中用到,但是有不好將這些代碼單立出來成為一個(gè)類的一個(gè)成員函數(shù)。但是又很想復(fù)用這些代碼。寫一個(gè)公共的函數(shù),可以,這是一個(gè)解決方法,不過函數(shù)用到的一些變量,就可能成為公共的全局變量,再說為了復(fù)用這么一片代碼,就要單立出一個(gè)函數(shù),也不是很好維護(hù)。這時(shí)就可以用仿函數(shù)了,寫一個(gè)簡(jiǎn)單類,除了那些維護(hù)一個(gè)類的成員函數(shù)外,就只是實(shí)現(xiàn)一個(gè)operator(),在類實(shí)例化時(shí),就將要用的,非參數(shù)的元素傳入類中。這樣就免去了對(duì)一些公共變量的全局化的維護(hù)了。又可以使那些代碼獨(dú)立出來,以便下次復(fù)用。而起這些仿函數(shù),還可以用關(guān)聯(lián),聚合,依賴的類之間的關(guān)系,于用到他們的類組合在一起,這樣有利于資源的管理(這點(diǎn)可能是它相對(duì)與函數(shù)最顯著的有點(diǎn)了)。如果在配合上模板技術(shù)和policy編程思想,那就更是威力無窮了,大家可以慢慢的體會(huì)。
            ???? 在下只是拋磚引玉,希望大家多多指教。
            posted @ 2006-03-22 22:15 walkspeed 閱讀(800) | 評(píng)論 (3)編輯 收藏
            僅列出標(biāo)題
            共6頁(yè): 1 2 3 4 5 6 

            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿(4)

            隨筆分類(64)

            隨筆檔案(58)

            文章分類(3)

            文章檔案(3)

            相冊(cè)

            收藏夾(9)

            C++零碎

            好友

            搜索

            •  

            積分與排名

            • 積分 - 160870
            • 排名 - 163

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久久久久久人妻无码中文字幕爆 | 国产一区二区精品久久岳| 久久久亚洲欧洲日产国码是AV| 国产精品99久久久久久www| 久久精品成人免费网站| 久久狠狠高潮亚洲精品| 久久精品亚洲一区二区三区浴池 | 久久久久久久久久久| 久久精品国产亚洲AV香蕉| 久久国内免费视频| 国内高清久久久久久| 久久亚洲精精品中文字幕| 2022年国产精品久久久久| 青青草原综合久久| 理论片午午伦夜理片久久| 久久精品国产男包| 久久精品欧美日韩精品| 人人狠狠综合久久亚洲婷婷| 丰满少妇人妻久久久久久4| 欧美国产成人久久精品| 99久久精品免费看国产一区二区三区 | 日韩欧美亚洲综合久久影院d3| 亚洲午夜精品久久久久久人妖| 久久综合伊人77777| 色婷婷久久综合中文久久蜜桃av| 久久久久无码精品国产不卡| 久久精品人人做人人爽电影| 久久久久人妻一区精品| 亚洲国产精品无码久久一线| 88久久精品无码一区二区毛片| 性做久久久久久久久浪潮| 99久久777色| 久久精品一本到99热免费| 久久亚洲国产精品一区二区| 亚洲精品高清一二区久久| 2022年国产精品久久久久 | 人妻丰满AV无码久久不卡| 久久久久久国产a免费观看不卡| 人妻少妇久久中文字幕| 中文成人无码精品久久久不卡| 久久精品中文闷骚内射|