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

            人生半路, 殺出個程序

            什么時候才能學會編程啊?

            共2頁: 1 2 
            用非虛函數來包裝虛函數這個做法雖然早就聽過, 但是我一直沒明白什么場合需要用. 到使用虛函數包裝非虛函數的"代理"技術, 倒是時不常的能用到.
            re: 我的編輯器 0.80 欲三更 2011-11-03 06:12
            @megax
            那我就再支持一下吧----我提個不知道對不對的建議啊, 只是我的個人意見,. 如果你要提供插件機制的話, 不要寫成notpad++那樣的模式, 非常不穩定, 一個插件出錯程序就崩潰了. 最好能提供一個腳本接口. 就像那兩尊編輯器大神或者firefox那樣.
            re: 我的編輯器 0.80 欲三更 2011-11-01 18:50
            @megax
            textmate那是跟ROR合謀炒作的結果...另外你要考慮到mac是一個比win23商業環境好得多的系統. 不過你的demo我下載了試用過了, 確實很清新.
            這個有點geek的過分了吧?
            re: 我的編輯器 0.80 欲三更 2011-11-01 02:58
            @megax
            如果你想做收費軟件的話, 這么說吧, 至少在win32上, Notepad++就是個參照系, 你有信心做的比npp好嗎? npp可是免費的.
            re: 我的編輯器 0.80 欲三更 2011-11-01 02:52
            @megax
            開不開源區別都不大, 不過文本編輯器很難"改善生活"吧? 畢竟這東西都是程序員自己在用, 頂多面試或者程序員聚會的時候秀一秀.
            @路過
            謝謝, 受教了. 若不是你的提醒我不會注意到flash的shareobject...雖然我現在還沒太弄明白你的方法的原理..
            @哇
            但是我估計它轉正的可能性并不大. 這個東西能做的事情太多了.
            剛才玩了一下那個飛機游戲,有點難啊。。。不過真的跟精致,動畫效果真到位,贊一個!
            那個飛機游戲看著挺好
            @jans2002
            因為只是個雛形,很多功能還沒做呢,代碼稀爛稀爛的,我都不好意思拿出來。
            再說我都把原理和實現說的這么清楚了,相關文檔也有鏈接,應該比提供代碼還容易懂吧?
            re: min(x,y)高效算法 欲三更 2011-09-03 04:01
            @TTEE
            那應該是編譯器把if else方法優化了。
            1.按照lz的邏輯,F22戰機的嚴重危害是它們太費油——你都使用導出類了,還在乎什么內聯函數?

            2.stl代碼里面什么時候有導出類的符號了?VC的crt說的是C庫。

            3.這個時候,進程中的內存結構產生了微妙的變化……以我的經驗,任何一個頭腦正常的工程師都不會做這樣的事情!

            4.現在談COM之類的東西,我怎么感覺這是5年前的文章?
            哈哈,其實我也造過這么一個輪子,當時我想出來好多INI文件的擴展。又是#include,又是宏,又是域和子域。。。亂七八糟一大套,結果寫完到最后自己不會用了。。。那些功能我自己都沒在邏輯上琢磨明白~~
            何必呢,直接用xml dom有什么不好的?
            re: 自制虛擬機框架 欲三更 2011-07-11 08:30
            祝你早日把linux在你的虛擬機上boot起來~
            re: 做了 一個 xp 透明窗口 欲三更 2011-06-08 15:00
            咦?你用Qt怎么做到的光滑圓角?我用Qt的透明模板功能做出來效果不好,圓角處霍霍牙牙的。
            每個IT男硬盤伸出都有一個當年寫的俄羅斯方塊~
            你這個準備拿來創業么?
            @打擊裝B犯
            你說的很對哈哈

            不過這個東西倒是也有用,可以計算合理TCP緩沖區大小。
            Lingoes沒有生詞本功能么? 抱歉我沒用過. 有道是有的.
            @千暮(zblc)
            maybe引起你回憶的那篇文章是我的拙作...
            也就是說這段代碼目前有錯誤是吧?

            那我就不在我那里加鏈接了^_^
            不同模塊的內存問題,我覺得這簡直是一個c++設計欠考慮的地方。就算是不重載new也不見得沒問題。只要不是自己源碼編譯的模塊都不保險。
            任何時候都不應該寫這樣的代碼:

            qsort(數據指針,元素個數,單個元素的字節數,"YXZQQQ\213\0+\2\303");
            re: Small Basic初體驗 欲三更 2011-02-21 18:09
            這個玩意試用過一次, 確實蠻好玩的, 里面有個烏龜, 可以利用它來做出分形圖.
            說起來是這些方法,但是在涉及到跨模塊的時候,所有的模板方法都會有一定問題,然后虛函數,也就是接口的方法又不夠靈活,最后,涉及到跨線程的時候,所有的方法都面臨極大考驗。

            總結:
            1.c++基本上就解決不了回調這個問題
            2.c++鼓勵源碼級的復用,而不是二進制模塊級的復用
            3.c++還是不大適合多線程

            PS:我記得還有一個cppsignal庫和boost::signal也能用于這個功能。其實具體到一個領域,比如GUI,那么windows的消息機制其實是最好的。
            我記得C++類模板自動有 __declspec(dllexport)的標簽,不用寫。

            然后要導出摸板的話,可以這樣:

            #ifdef DLL_EXPORT
            #define EXPORT extern
            #else
            #define EXPORT
            #endif

            EXPORT template class NormalMembers<int>;

            需要的話我就這樣導出,但是這個東西我感覺不太實用,因為我經常遇到一個模板類要實例化好幾十種實例的情況,比如每寫一個類就要用到某個模板的,這樣類多了要是一個一個導出,實在太麻煩了。
            re: 2009-2010小結(四) 欲三更 2011-01-26 11:12
            呵呵,字里行間已經看出你的郁悶了^_^

            關于框架設計的好不好,我有個比較淺顯的判斷方法:
            如果一個層次結構包含了一大堆類,接口,封裝。但是:1.如果在實現中還是要頻繁的判斷這個判斷那個,那基本上這個設計可能有問題。2.如果調用一個功能需要涉及一對類,一會這個類一會那個類的,那也基本上是有問題了。

            至于同步異步的問題,坦白說,異步的復雜性太高了,根本得不償失。
            re: 也談談GUI框架 欲三更 2011-01-26 01:40
            順便說一句,你要是想如你所說把兩個param的解析徹底封裝起來,你這個MsgMap的模式可能要改。因為為了方便使用,對于不同消息可能要有一些特殊的處理步驟,而且你自己可能還要塞一些自己的消息進去,你可能得多封裝一層
            re: 也談談GUI框架 欲三更 2011-01-26 00:29
            按照我暫時的體會,我倒覺得GUI框架的難點不在你說的這幾個點上。我說說我的體會:

            首先,基本庫的選型。基本的容器和算法可以使用stl,但是stl有個問題就是他是模板庫,可能會遇到版本和內存問題,而且stl的string類不太好用,至少在多種編碼方式共存的情況下不太好用,我的解決方法是自己寫一個string類,內部使用ucs-2,支持比較常用的編碼轉換,不常用的那些可以引入iconv。string用自己會帶來附加問題,就是一些基于字符串的功能要自己寫,比如常用的xml封裝等等,可以自己實現夠用的就行,也可以找支持多種編碼的庫來集成。

            然后是GUI API的封裝,最常用的比如win21和Xwindows,這個其實也不好做,主要是要制定一套合理的接口和錯誤碼機制,這個要對幾種系統的功能覆蓋面和特點有全面的了解,以我現在的水平還不太行。而且這部分很繁雜。

            再然后是類層次的設計,這個我們可以參考比較經典的實現,比如MFC或者QT。我個人比較喜歡的是borland的VCL,思想樸實但是絕對夠用。這里面比較復雜的部分是我覺得是:首先控件主要分兩種,一種是帶窗口id(win上師句柄)的,另一種是不帶id的,完全自己封裝的“偽控件”,這兩種結合在一起統一管理,不太好做。其次這一步如果不合理,那可擴展性就會變得不好。

            接下來就是偽控件的實現,這個部分要實現的很多,要仿照原生控件實現z-order的管理,消息傳遞等等,要思考得很清楚才行。

            再下來是渲染,我個人傾向于完全自己渲染,大部分人不同意,但是我覺的這樣更好實現界面的統一。如果自己渲染的話,首先得懂一點美工或者認識一個洞美工的給你把把關,不能太難看,其次分塊渲染這部分本來就不太好做,可以使用gdi+,但是跨平臺的話就得用一些開源庫比如agg。那你還得封裝一層,這個確實是工作量的問題。

            下面的問題我和你的觀點倒是一樣的,就是回調函數的問題。這是個大問題,首先要實現回調函數成員化,這個不難,屬于小技巧吧,可能高手實現的話效率會好一點。但是回調函數和多線程結合起來,怎么做一個比較好的實現還是不容易,我是做了一個qt機制的簡化版,勉強能用吧,但是我覺得不太好。而且這里還有一個問題就是如果你的框架被用來寫模塊,主程序不是你的,怎么辦?比如我用你的框架寫了一個ActiveX,怎么搞。所以這個回調機制得是應單線程,同步,異步,以及沒有消息隊列的情況。我覺得高手來做的話這部分會很精彩,比如qt。

            最后就是附帶性的問題了,比如怎么支持皮膚,怎么支持RAD開發,是不是要支持外掛腳本。這些工作量絕對不小于核心功能的工作量。還有你說的大量空間,別的就不說了光一個彩色多字號的文本編輯器,就要用去不少時間了。

            以上是我的想法,有點啰嗦,歡迎批評^_^
            呵呵,我看到文章的開頭就猜飛秋加密用的應該是飛鴿傳書源碼里的某種加密算法,果不其然哈哈^_^
            其實dll導出類還是挺好用的,雖然有各種各樣的限制,但是它使用起來是最好看的,比c函數和接口導出都好看。

            基本上如果你手上有一個有源碼的類庫,在不考慮模板的前提下,編譯成dll使用還是很方便的。
            re: C++的流設計很糟糕[未登錄] 欲三更 2010-07-09 23:15
            沒太看明白。lz的意思是不是說C++的流設計倒是用戶不能確定什么時候寫入的信息會真正流入到IO設備里,如果是這樣的話我覺得這種東西應該放在文檔里。

            stream << "abc" << "def" << endl; 這里你看不出來什么時候結束,
            難道printf("%s%s\r\n", "abc", "def");你就能看出來了? 還不是要看文檔才知道?
            re: 關于C++之“復雜” 欲三更 2010-07-09 15:27
            絲毫不懷疑C++的復雜性,因為自己有時候也會掉到陷阱里。

            但是我很懷疑:一個用C++時不停的犯錯誤,代碼質量糟糕,或者在語言特性的框架之內經常感到一些功能實現不了的人如果轉用了java,C#或者腳本語言,那么他寫出的程序水平或者質量就能“自動”的上一個臺階么?

            我不太相信這個。
            對代碼的編碼格式有要求么?
            re: C++實用技巧(一) 欲三更 2010-06-24 01:13
            我傾向更激進的策略:
            1.盡量少用指針指向的數組,用的話盡量用對象把他們包裝起來。
            2.調試時期的代碼中檢查每一個指針的合法性,不合法立刻崩潰。
            3.多線程程序中如果一個對象包裝了帶鎖的資源,那這個對象要么是全局的,要么只能有一個指定的線程來delete,而這個線程不使用相關資源。
            4.少new,少delete,最好能別new就別new。
            。。。
            re: Notepad++自定義語言的添加 欲三更 2010-06-06 07:10
            @戰魂小筑
            謝了,界面上沒有,因該是在xml里定義吧,看看文檔去。。。
            閱讀代碼也是一種天賦。。。
            re: Notepad++自定義語言的添加 欲三更 2010-06-04 19:41
            菜鳥問, npp有沒有什么辦法把背景改成黑的? 我研究了半天, 只把有字的部分背景改成了黑的, 空白的地方還是白的...我都想直接改程序了~
            這個東西要是學C、C++的起點吧? 要是連這個都不知道,那就是根本就沒學過C/C++了。
            re: 偶見CSDN的VC6的猛人[未登錄] 欲三更 2010-05-04 21:11
            其實如果單單開發mfc或者使用c++開發socket之類的程序, 確實vc6是夠用而且很方便的。你想連WPS那么復雜的軟件用VC6都沒問題,我們平時開發程序能有什么問題?

            當然,前提是別涉及c++的一些“深度”特性。
            @expter
            我知道你是這個意思, 但還是覺得太奢侈了.
            反正你只把相同尺寸的Buffer連在一起, 能不能這樣簡單點搞搞?:

            template <size_t s>
            struct Buffer
            {
            ----static size_t Size;
            ----union
            ----{
            --------struct
            --------{
            ------------Buffer<s> *pNext;
            ------------Buffer<s> *pPrevious;
            --------}p;
            --------char m_pBuf[s];
            ----}
            };

            然后模板顯式實例化順便把靜態成員也賦上值.
            @qiaojie
            要是人家不用list呢?
            mempool大概就是這樣子吧, 我應該寫不出這么好:)

            但是: 1. 如果我要申請的是8字節這么大的內存, 那么內存浪費的比率就非常之大!
            2. struct Buffer: CNode<Buffer>
            {
            eBuff_Type type;
            };

            就說這個結構, 就為了記錄一個大小, 每個對象里都要存儲一個變量, 不覺得浪費么?
            @溪流
            我只能說, 還好有小巧的WTL...
            共2頁: 1 2 

            導航

            統計

            常用鏈接

            留言簿(1)

            隨筆檔案(1)

            另一個我

            最新評論

            久久久久久国产精品无码下载 | 久久久久国产精品嫩草影院| 久久精品成人| 婷婷久久久亚洲欧洲日产国码AV| 久久精品免费一区二区三区| 亚洲午夜精品久久久久久app| 亚洲午夜久久影院| 国产精品久久久久无码av| 日韩乱码人妻无码中文字幕久久| 精品综合久久久久久88小说| 国产精品久久久久影院嫩草 | 久久99国产精品成人欧美| 久久伊人五月丁香狠狠色| 看全色黄大色大片免费久久久 | 久久天天躁狠狠躁夜夜av浪潮| 日本国产精品久久| 久久91精品综合国产首页| 色综合久久久久久久久五月| 99久久成人18免费网站| 色欲综合久久中文字幕网 | 亚洲va中文字幕无码久久不卡| 久久伊人精品青青草原高清| 亚洲一区精品伊人久久伊人 | 九九久久自然熟的香蕉图片| 久久婷婷五月综合成人D啪 | 久久青青草视频| 女人高潮久久久叫人喷水| 91精品国产色综久久| 久久66热人妻偷产精品9| 久久精品中文字幕一区| 亚洲国产综合久久天堂| 久久久久国色AV免费看图片| 久久久精品一区二区三区| 国产亚洲色婷婷久久99精品| 久久人人爽人人爽人人片AV不| 久久笫一福利免费导航| 久久综合九色欧美综合狠狠 | 久久精品国产亚洲AV大全| 四虎国产精品免费久久5151| 久久午夜无码鲁丝片| 久久精品国产免费一区|