青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

The Programming world of Alex

2010年7月7日

Xtreme實現MFC視圖分割

     摘要:   閱讀全文

posted @ 2010-07-07 17:46 Alex@VCC 閱讀(2709) | 評論 (0)編輯 收藏

2009年12月23日

小痰盂試鏡照

posted @ 2009-12-23 14:26 Alex@VCC 閱讀(319) | 評論 (0)編輯 收藏

2009年4月14日

設計模式之Builder模式

     摘要: Builder模式仍然屬于創建型模式,主要體現了OO中“封裝”和“多態”兩個特性。還是引一個簡單的例子來說明Builder模式的意義。假設我們設計的游戲中需要創建一個比較復雜的房屋對象,房屋對象有很多部分組成,比如說有門,窗戶,墻,地板等等。當我們在將這個房屋實現之后,可能隨著需求的改變需要對門進行更換,將原來的木門換成鐵門。這時候的問題就是:如何改...  閱讀全文

posted @ 2009-04-14 21:51 Alex@VCC 閱讀(2392) | 評論 (1)編輯 收藏

2009年4月8日

設計模式之FactoryMethod模式

     摘要: FactoryMethod模式屬于23種設計模式中的創建型模式,解決的是如何“new”的問題。引例:還是先從簡單的例子入手FactoryMethod模式吧,現在需要一個汽車測試的環境來對汽車進行測試,我們很容易會這樣設計  1/**/////////////////////////////////////////////// 2//汽車類 3...  閱讀全文

posted @ 2009-04-08 20:58 Alex@VCC 閱讀(1777) | 評論 (7)編輯 收藏

2009年4月6日

設計模式之AbstractFactory模式

     摘要: 設計模式的目的就是盡量減少“變化”對程序的影響,尤其是對客戶程序的影響。AbstractFactory模式作為創建型模式的一種,解決的就是“new”在變化中可能引起的問題。先來看看new有何種不好,舉個創建汽車的車門的例子:很自然的一種想法是:Door *door = new Door();但是如果遇到創建老爺車的車門,創建現代車的車門,這段代碼就無...  閱讀全文

posted @ 2009-04-06 21:20 Alex@VCC 閱讀(1683) | 評論 (2)編輯 收藏

設計模式之Strategy模式

     摘要: Strategy模式是設計模式中非常常用的一種設計模式,甚至在你沒有學習過設計模式之前就已經使用過這種模式。先看個簡單的例子吧:比如說你要寫個List的容器,需要有一個Sort方法。但是對于容器中不同類型的對象Sort方法可能會不一樣,比如說Point類型可能根據point到原點的距離或者point的xy之和來比較大小。一種很自然的想法就是: 1void sort()2{3 ...  閱讀全文

posted @ 2009-04-06 15:21 Alex@VCC 閱讀(3168) | 評論 (7)編輯 收藏

2009年4月5日

設計模式之Observer模式

     摘要: 引例:銀行現在的業務大多有提醒業務,比如我們用信用卡消費的時候銀行會有短信通知和Email通知等方法立即提醒客戶賬戶發生了變化。這就是典型的Observer模式,A(賬戶)發生變化之后通知B(手機)和C(Email),以后也許還會通知D(電話)等等。。。程序設計中也會遇到很多這樣的問題,比如說MFC中的Document/View架構,Document中的數據變化會立即通知View的顯示也相應變化,...  閱讀全文

posted @ 2009-04-05 22:51 Alex@VCC 閱讀(1766) | 評論 (3)編輯 收藏

2009年3月11日

C++模板內容拾遺

上C++課程的時候老師總是鼓吹模板如何重要,但是真正上課時候卻將該部分跳過。平時做項目寫程序雖然天天接觸STL,但說到如何實現模板真的是道不出其一二。現將這幾天看C++Primer中的一些重要概念提取出來,以備不時之需。
1,模板的用處。
模板其實也是多態思想的一種體現,不過不是C++那個運行時多態,而是編譯時多態。那么用在什么地方呢?個人感覺用的最多的是在數據結構中,一些經典的數據結構(Queue,Stack)用模板類實現確實事半功倍。至于其他地方嘛。。。也許是自己的功力不夠,幾乎就沒有用過(設計模式不也是一樣的道理嘛,囧)
2,模板定義
模板函數定義:
template<typename T>
int compare(const T &v1,const T &v2);
內聯函數:
inline template<typename T> int compare(const T &v1,const T &v2);

模板類定義:
template<class Type> class Queue
{
 public:
    Queue();
   Type T& front();
//......
}
3,模板類實例化
Queue<int> qi;
其實這個不就是和STL一模一樣嘛?確實是的,STL不就是幫我們這些經典的數據結構一一實現了嘛?

4,友元的在模板類的使用
friend class Queue<Type>;
這樣就將Queue這個模板類設為了友元,之前必須要有Queue<Type>的聲明,如template<class Type> class Queue;

5,static在模板類中
一個模板類會有多個static實例成員,但每種類型的模板類只有一個static成員!
比如說Queue<int>有一個static成員,Queue<string>也有一個static成員

討論:
如果你討厭鏈接錯誤,那么你一定覺得模板這個東西是讓人討厭的,起碼編譯器是很討厭模板的,要知道在實例化時才會確定模板中T的類型,再根據他生成相應的代碼是件很麻煩的事情,模板類在這個問題上顯得尤其麻煩。
一般寫類都是將定義和聲明放在兩個文件中的,這樣清晰明了,但是在模板類中絕對不可以!編譯器會找不到你定義的那些方法!

所以說,寫模板類的話就請寫在一個文件中吧,MS到現在還把export留作未來使用的關鍵字在,我們暫時就不要指望這個了吧!

posted @ 2009-03-11 19:56 Alex@VCC 閱讀(1455) | 評論 (1)編輯 收藏

關于友元類的一些隨筆

看模板類的時候發現有些地方使用到了友元,上課學的記不得了,趕緊溫習下。。。

友元概念就不羅嗦了,使用也簡單,就兩種形式:
1.友元函數:friend ret-type classname::funname(....);
2.友元類:friend class classname;
唯一要注意的就是不管是友元函數還是友元類,定義友元關系前必須先聲明

友元類其實還是有些故事要說的,一旦類繼承起來友元關系還是有些小復雜的,下面簡單說明:



C中聲明A是其友元類,那么最基本的就是A可以使用C中的private方法或者對象。
圖中可見,A是B的基類,C是D的基類。ABCD中就有如下關系:
1.B新增的方法不能訪問C的私有成員
2.B從A繼承而來的方法可以訪問C的私有成員
3.A只能訪問D中從C中繼承而來的私有成員,D中新增的私有成員不能訪問!

總結起來就是友元關系不可以繼承,但對已有的方法來說訪問權限不改變。如果改寫基類的方法則訪問權限改變

PS : 要特別謝謝有朋友留言糾正了我的錯誤,這次將測試用代碼一并貼出

class C
{
    friend class A;
private :
    int numC;
};

class D : public C
{
private:
    int numD;
};

class A
{
public:
//A是C的友元,可以訪問C的私有成員
    void getFromC()
    {
        C c;
        c.numC = 100;
        cout<<"getFromC in A : numC = "<<c.numC<<endl;
    };
//A不是D的友元,不能訪問D中新增的私有成員,但可以訪問D從C中繼承而來的私有成員
    void getFromD()
    {
        D d;     
        d.numC = 23;
        cout<<"getFromD in A : numC  = "<<d.numC<<endl;
        //d.numD = 24;
        //cout<<"getFromD in A : numD  = "<<d.numD<<endl;
    }
};

class B :public A
{
public:
//友元關系不能繼承,新增的方法不能訪問C的私有成員
//    int getNumB()
//    {
//        C c;
//        c.numC = 100;
//        return c.numC;
//    }

//改寫方法后對C訪問權限改變,不能訪問C的私有成員
//    void getFromC()
//   {
//       C c;
//       c.numC = 100;
//       cout<<"getFromC in B : numC = "<<c.numC<<endl;
//   }

};

int _tmain(int argc, _TCHAR* argv[])
{
    A a;
    a.getFromC();//輸出——getFromC in A : numC = 100
    a.getFromD();//輸出——getFromD in A : numC = 23
    B b;
    b.getFromC();//輸出——getFromC in A : numC  = 100
    //調用的還是A::getFromC   
 return 0;
}

posted @ 2009-03-11 16:15 Alex@VCC 閱讀(3298) | 評論 (4)編輯 收藏

2009年3月3日

使用烘培簡化Ogre中的陰影實現

項目里的陰影實現一直沒有做,考慮到畢竟是室內的漫游項目,對陰影要求效果并不是很高,就準備用烘培試試看。況且烘培不用改代碼,模型改好后一勞永逸。

有圖有真相,看圖說話

Max里隨便加了兩盞燈,模型用的是我最喜歡的1Box+4Cylinder,可以看出地板效果還是挺好的。光線有些暗,把material文件的emissive改大些就行,懶得弄了。
接下來就把項目的文件全部baking出來吧,好大的工作量-_-|

posted @ 2009-03-03 19:57 Alex@VCC 閱讀(2248) | 評論 (6)編輯 收藏

僅列出標題  下一頁
<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

導航

統計

常用鏈接

留言簿(5)

隨筆分類

隨筆檔案

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚欧成人精品| 最近中文字幕日韩精品 | 久久精品久久99精品久久| 国产一区二区高清| 久久深夜福利免费观看| 一本久久青青| 久久久久久久综合狠狠综合| 久久久www成人免费毛片麻豆| 狠狠色狠狠色综合日日小说| 免费日韩av片| 欧美极品在线观看| 亚洲综合色在线| 久久精品国产亚洲高清剧情介绍| 在线国产亚洲欧美| 亚洲美女精品成人在线视频| 国产精品夜夜夜| 浪潮色综合久久天堂| 欧美精品久久天天躁| 欧美一站二站| 欧美 日韩 国产 一区| 亚洲一区二区三区欧美| 欧美一区二区三区在线视频 | 国产婷婷色综合av蜜臀av| 狼狼综合久久久久综合网| 欧美日韩精品欧美日韩精品| 久久成人国产| 欧美国产第一页| 久久久久久网站| 欧美日韩视频第一区| 久久人人九九| 欧美视频一区二区三区在线观看 | 亚洲国产清纯| 国产日韩欧美一二三区| 亚洲精品一品区二品区三品区| 国产伦一区二区三区色一情| 亚洲国产日韩美| 影音先锋久久久| 亚洲免费中文| 亚洲视频狠狠| 欧美国产精品久久| 你懂的视频一区二区| 国产精品一区三区| 日韩手机在线导航| 亚洲欧洲日本国产| 欧美在线亚洲一区| 亚洲欧美视频在线观看| 欧美精品一区二区三区很污很色的| 久久精品人人做人人爽电影蜜月| 欧美日韩在线电影| 亚洲国产专区校园欧美| 亚洲国产成人不卡| 久久国产日韩| 久久精品中文字幕一区| 国产精品一区二区久久久久| 9色精品在线| 99精品久久久| 欧美精品日韩综合在线| 91久久精品美女| 亚洲日本aⅴ片在线观看香蕉| 久久综合一区二区三区| 你懂的成人av| 亚洲高清视频的网址| 久久伊人一区二区| 免费试看一区| 亚洲国产专区校园欧美| 欧美成人日韩| 亚洲黑丝在线| 136国产福利精品导航网址应用| 老司机成人网| 国语精品中文字幕| 久久久噜噜噜久久中文字免| 久久阴道视频| 最新国产拍偷乱拍精品| 欧美人与禽猛交乱配视频| 亚洲精品视频在线| 亚洲欧美日韩成人高清在线一区| 国产精品三区www17con| 欧美在线你懂的| 免费成人高清| 99热免费精品| 国产精品美女黄网| 欧美影院午夜播放| 欧美成人免费全部| 一本大道久久a久久综合婷婷| 欧美日精品一区视频| 亚洲先锋成人| 老司机久久99久久精品播放免费| 亚洲欧洲综合另类在线| 欧美系列亚洲系列| 欧美一区午夜视频在线观看| 欧美激情一区二区三区在线视频 | 99re6这里只有精品视频在线观看| 欧美激情在线狂野欧美精品| 亚洲图色在线| 蜜桃av一区| 亚洲午夜久久久| 国内精品久久久久久久影视麻豆 | 欧美精品不卡| 亚洲欧洲99久久| 亚洲国产黄色片| 午夜在线电影亚洲一区| 亚洲第一精品久久忘忧草社区| 欧美巨乳在线| 久久精品水蜜桃av综合天堂| 99视频精品在线| 麻豆亚洲精品| 午夜精品一区二区三区电影天堂| 亚洲国产精品成人精品 | 久久国产精品一区二区| 亚洲精品一区二区三区四区高清| 久久国产日韩| 一区二区三区三区在线| 在线精品一区二区| 国产欧美一区二区白浆黑人| 欧美激情a∨在线视频播放| 欧美一区二区在线免费观看| 99一区二区| 亚洲大胆人体在线| 久久久激情视频| 亚洲欧美综合一区| 一本久久青青| 亚洲人成亚洲人成在线观看| 狠狠久久亚洲欧美专区| 国产欧美一区二区精品性| 欧美日韩国产麻豆| 欧美va亚洲va日韩∨a综合色| 久久精品国产v日韩v亚洲| 亚洲欧美在线高清| 亚洲午夜一级| 亚洲一区二区三区四区中文| 99国产精品视频免费观看| 91久久久久| 最新日韩欧美| 国产精品亚洲视频| 一区二区三区波多野结衣在线观看| 欧美激情视频在线播放| 欧美自拍丝袜亚洲| 欧美一区二区私人影院日本| 午夜精品久久久久99热蜜桃导演| 亚洲视频在线观看| 亚洲视频网站在线观看| 亚洲深夜影院| 亚洲自拍啪啪| 欧美影院成年免费版| 欧美在线视屏| 久久性色av| 久久综合九色欧美综合狠狠| 久久夜色精品国产欧美乱极品| 久久人人爽国产| 另类酷文…触手系列精品集v1小说| 久久精品视频在线免费观看| 久久综合电影| 欧美激情亚洲综合一区| 欧美日韩另类国产亚洲欧美一级| 欧美视频你懂的| 国产精品视频午夜| 国内精品美女在线观看| 亚洲区免费影片| 一本色道久久| 性欧美video另类hd性玩具| 久久精品国产69国产精品亚洲| 久久免费视频网| 欧美高清在线视频| 亚洲免费成人| 欧美亚洲综合网| 美女网站在线免费欧美精品| 欧美日韩伦理在线| 国产欧美在线视频| 亚洲国产欧美日韩精品| 亚洲午夜日本在线观看| 久久久久久久波多野高潮日日| 欧美88av| 亚洲一区久久| 免费成人性网站| 国产精品久久久久久妇女6080| 国产综合色在线| 9久草视频在线视频精品| 久久国产精品毛片| 亚洲国产婷婷综合在线精品| 亚洲一级在线| 蜜臀久久99精品久久久画质超高清| 欧美色图五月天| 伊人久久久大香线蕉综合直播| 一区二区三区高清在线观看| 久久久久久有精品国产| 亚洲免费观看高清在线观看| 久久精品成人欧美大片古装| 欧美日韩久久精品| 亚洲第一福利在线观看| 欧美一区二区三区免费在线看 | 亚洲黄色精品| 欧美一区二区三区在| 亚洲肉体裸体xxxx137| 久久成人精品视频| 国产精品毛片大码女人| 一本久道久久综合中文字幕| 免费成人性网站| 欧美在线一级va免费观看| 国产精品第三页| 亚洲视频在线视频|