• nemo's blog

  • 致力于游戏开发
  • 首页
  • 登录
  • 我的C++笔记(五)

    post by idnemo / 2008-3-16 21:59 Sunday

    这篇小文开始进入C++的面向对象的编程。OOP三大特性是:封装、继承和多态。其实更精确的说法是:基于对象的编程风格:类的封装性。面向对象的编程风格:继承性和多态性。

    声明类之后就可以使用类指针和作为虚参的数据类型。
    public可在程序任何地方取用,private只能在成员函数或类友元中取用。如果类对象或其引用在成员函数(比如拷贝构造函数)中出现,同样可以取用private成员。但是在类外的类对象是不能取用private成员的。
    类内定义的成员函数自动视为inline。inline函数必须在头文件中定义。
    构造函数和析构函数
    若在构造函数内动态分配内存之后,需在析构函数中释放。
    通常,对象赋值时默认的拷贝构造函数即可使用。但是如果在构造函数中动态分配了内存,那么需自定义拷贝构造函数。并在拷贝构造函数中再次动态分配内存,并对这个新的副本赋值。
    类名::类名(const 类名 &rhs)
    关键字mutable(可变)const(不变).
    在成员函数中标注const,就向编译器表明该成员函数不会更动类对象的内容。const和非const函数也可以用来作为重载函数之间的区别。
    在成员变量上标注mutable,就向编译器表明该成员变量不会更改类对象的常数性,即const函数中可以对mutable变量的值进行变更。
    this指针用来在成员函数中寻址其调用者(整个对象)。

    阅读全文>>

    标签: 游戏开发
    评论(11) 引用(0) 浏览(937)
  • 我的C++笔记(四)

    post by idnemo / 2008-3-7 22:26 Friday

    接着上次的STL,list和map同样是两种比较常用的容器。就像vector一样,很好很强大。

    第三种容器deque也是连续内存存储元素,类似vector,但是它的前端和末端元素的插入和删除效率更高。STL的队列便是以deque实现的。定义:
    list<string> slist;
    或 list<int> ilist(1024)  1024个0值
    或 list <string> slist(16,"fuck");16个"fuck"
    或 int ia[3]={2,1,5};vector <int> fib(ia,ia+3);迭代赋值
    或list <string> slist; list<string> slist2(slist);复制容器的元素
    容器还有push_back(),pop_back()操作。list和deque还有push_front()和pop_front()操作。通用的容器插入函数insert(),删除函数为erase().
    使用泛型算法前,#include <algorithm>

    阅读全文>>

    标签: 游戏开发
    评论(0) 引用(0) 浏览(969)
  • maria talyor

    post by idnemo / 2008-2-28 22:05 Thursday

    maria talyor的两张专辑陪我度过了两个礼拜的加班时光,她的声音让我一次次的在昏昏沉沉之中重新振作起来。我不怎么知道很多音乐术语,只知道声音很迷人,旋律很好听。“好的音乐是拿来分享的。”很多悦耳的声音却因为流行程度太低,听的人少之又少,岂不是很可惜。

    前些日子在极品音乐论坛上看到的一个评分法,所以也按照这个标准评评分。我从大学开始就已经养成了为玩过的游戏和电影评分,算是为自己喜欢的留下一些记忆。现在音乐我也想这么做了。当然,这个评分很主观,不喜欢indie pop的就无视的吧。我是不喜欢太吵的音乐,所以目前独立流行和独立电音是听得最多的了,稍微重一点摇滚就让我想骂N了。

    maria talyor :11:11
    声音 10     旋律:10  演唱:10     乐器:9   歌词:7(同下)   封面 :8        推荐曲面:Song Beneath The Song 、Xanax  总分:9.0

    maria talyor :Lynn Teeter Flower
    声音 10     旋律:9 演唱:10     乐器:9  歌词:8(只听懂了两首最喜欢的歌)  封面:9   推荐曲目:A Good Start、Smile And Wave 总分:9.2

    <Lynn Teeter Flower>的封面

     

     

    标签: 音乐
    评论(6) 引用(2) 浏览(1199)
  • 我的C++笔记(三)

    post by idnemo / 2008-2-23 21:07 Saturday

    今天的C++笔记是关于STL的,主要是vector和map的内容,这也是目前用得最多的两种容器。

    拥抱容器,抛弃数组吧。

    stl由两部分组成:1、容器:包括vector,list,set,map。2、操作容器的泛型算法:find(),sort(),replace(),merge().
    vector和list是序列式容器,一般做迭代操作。map和set是关联式容器,可以快速寻找容器中的值。
    map是key-value组合,set仅有key。
    泛型算法:这些对容器的操作和所要操作的元素类型无关,无论是int、float还是string,也独立于容器型别,无论是vector,list还是array。
    泛型算法通过模板函数的技术,达成与操作对象的类型独立的目的。
    数组作为实参或返回值时,只有第一个元素的地址被传递。array[2]形同*(array+2)
    list容器类似数据结构中的线性链表。
    迭代器的在迭代访问时的作用类似指针。

    阅读全文>>

    标签: 游戏开发
    评论(0) 引用(0) 浏览(997)
  • 收购雅虎、次世代格式之争

    post by idnemo / 2008-2-12 20:04 Tuesday

    最近IT业发生了一件大事,就是微软开始收购雅虎了。微软终于把“魔爪”伸向了互联网,就在雅虎的股价不振的时候。对于微软来说,这也是拯救其"Live"品牌的在线产品以及最终在网络市场取得成功的一个机会。
    联系到CES前夕,华纳投靠BD阵营。而本身谣传微软要推出内置HD-DVD光驱的XBOX360,结果微软没出。微软对于HD-DVD的态度已越来越冷淡。在盖茨规划的下一个数字十年,内容几乎全是关于互联网的。因为在盖茨的眼里,光盘是没有前途的产品,网络才是未来高清节目的主要传播途径,无论是BD还是HD DVD获胜,在微软看来都没有什么太重要的商业前景。微软支持HD DVD完全是为了牵制索尼的PS3游戏机,因为搭载BD驱动器的PS3是微软XBOX 360游戏机的最有利的竞争者。索尼为了BD,导致PS3上市时间落后于XBOX 360一年的时间,并导致了超过40亿美元的亏损。
    微软支持HD DVD就是在拖PS3的后腿,而XBOX360的作用已不仅仅停留在一个游戏机身上了,它是微软规划的娱乐设备终端。对于家庭娱乐来说,微软要将原先那种买光盘玩游戏看电影的方式,转而通过XBOX LIVE付费下载。如果将雅虎的娱乐和视频点播等业务整合到XBOX LIVE,无疑会对增加XBOX LIVE的用户起到更积极的作用。需知现在XBOX360卖出将近1800万台,而XBOX LIVE的用户只有1000万,这里面还有很大一部分增长空间。
    我不敢说对于互联网来说,收购雅虎对普通网民来说是一件好事还是坏事(有人说微软又要搞垄断了)。但是对于我们公司来说,这绝对是一个好事情。灵禅是中国第一个做XBOX LIVE ARCADE游戏的。从心里上来讲,如果XBOX LIVE的用户越多,那么也许游戏的销量就会更好一点。而如果游戏的销量好一些,那么公司以后可能就会有更多的XBOX项目投入开发。那么,我就更有机会了。

    标签: 游戏
    评论(4) 引用(0) 浏览(844)
  • 我的C++笔记(二)

    post by idnemo / 2008-2-9 19:51 Saturday

    转瞬之间已经过了农历的08年,进入鼠年之后就是我人生的第三个回合开始了。对很多人来说,人生的第三个回合应该是最灿烂的,最美丽的。要有所作为也差不多就在这个年龄。不过,我尚且不会把自己的目标规划到下一个12年的末端,大概3-4年之内要做些什么事情是有的。有目标还是好的,起码不会让自己迷失。

    最近感觉在电驴上下歌越来越慢了。中国的网络环境已经趋向于共产主义,别没被政府强制扼杀,反倒被群众的不厚道行为给毁了。我现在自己也一直保持着2-3张专辑的共享,而且任何P2P软件都不限速。

    这次的C++笔记是面向过程部分。

    function objects,某种类实体对象,对函数调用运算符进行了重载,可使function objects被当成一般函数调用。标准库事先定义的function objects有6个算术运算,6个关系,3个逻辑运算。
    欲使用function objects,需包含<functional>
    function objects Adapters(配接器)对function objects进行修改,使其从二元运算变成一元,提高效率。
    应用程序内存区域:堆(new,malloc)、栈(实参)、全局数据区(全局变量)
    为了函数通信将对象至于全局作用域是冒险的,使用局部静态对象好过使用全局的。静态对象在局部作用域结束后仍然存在,所以可以返回一个局部静态对象的地址,若返回一个局部非静态对象的地址,则会引起一个警告。局部静态对象属于某个函数或作用域内。

    阅读全文>>

    标签: 游戏开发
    评论(0) 引用(0) 浏览(1001)
  • 我的c++笔记(一)

    post by idnemo / 2008-1-31 23:03 Thursday

    前些日子发觉我应该写好很多东西才慢慢放到BLOG上来,而不是每个礼拜去定时更新一篇技术文。因为那样的话,总感觉写BLOG好像是每周被逼出来的一篇。可以保证的是,我已经写好了足够更新半年的BLOG文章,哈哈。
    记得大学的时候,我的C++老师曾经说过记笔记的重要性和必要性。当时我还是不屑一顾。但是在工作之后,我才发觉学编程,笔记是如此的重要。因为现在已经无法再像以前在学校的时候,一天专门看一本书看个几个小时了。很可能由于工作的关系,一本书看了一半,等到再次拿起来时已经是一个礼拜之后的事情了。而简短的笔记,可以让我在十几分钟就将所学的东西迅速的复习一下。特别是对于我读过的一些PDF电子书而言,还有一个更大的好处就是随时可以ctrl+f进行查询。当然,纸质的书现在还停留在画画的阶段。
    我现在一直还在看的有三样:c++,DX,ogre。
    c++这个东西我不知道什么时候能到头,也许永远也学不完。C++一直在扩充,从最早的继承自C、面向对象,到现在的STL的广泛应用,即将大范围应用的泛型编程,还有代表着将来的Boost和TR1。反正是学一点是一点。
    DX嘛,仍旧是PC平台的主流游戏API。
    ogre这个是最近才开始看,是一个用于专门的3D渲染的引擎。因为开源,所以网上代码较多,交流的文章也较多,学起来不很费力,作为学习的第一个游戏引擎还是不错的。

    以后的BLOG就把这些学习的心得放上来吧,大概就是这三样东西。我已经抛弃了万恶的winsock,和网络编程彻底说byebye了。今天放上第一篇的是C++的。

    阅读全文>>

    标签: 游戏开发
    评论(1) 引用(0) 浏览(1205)
  • 2M快多了。。。还有数学。。。

    post by idnemo / 2008-1-26 10:25 Saturday

    怨念了1年的1M宽带终于到期了,换成2M后感觉爽多鸟。高清、无损下得刚刚的,电脑拿来看720P的,PSP看480P的和听APE。

    虽然直到最近才看完去年的三部大片:加勒比海盗3、变形金刚、哈利波特,但是觉得挺值。后悔等不及看了DVD版的蜘蛛侠3,不过话说回来,蜘3的评价太低了,这是硬伤……

    PSP的音质很不错,是非常的不错。国产的MP3质量太差,即便有着音质好的,也不敢用啊。国外的MP3基本都不支持APE和FLAC双无损格式,貌似这格式要授权费的。可能iphone出软件也可以支持,就像PSP一样。买了一个多月的MX550,终于煲得差不多了。其实,对于PSP来说,更易推的MX550比那名声在外的MX500更合适。

    现在在项目中做界面只是暂时性的,项目代码总是从简单的开始熟悉。主管已经叫我开始看DX,准备做客户端游戏。

    数学,数学,3D数学,有人说做3D得数学好。这话不假,但是数学TM那么宽泛,说的是哪个数学?

    从我现在的接触来看,大部分是高中的解析几何,还有一些线性代数,至于高数可能在做高级特效,如水效果中用到。

    最近同时在看ogre,那个著名的免费开源游戏引擎。我想看看能拿这个引擎做出一个什么东西来?

    标签: 牢骚
    评论(0) 引用(0) 浏览(861)
1 2 3 4 5 6 7 8 9
  • blogger

      blogger
    • idnemo
    • 目前供职于2k Games,快乐地实现自己梦想,美…… MAIL:shenheshen@163.com Skype:idnemo QQ:64183074
  • 标签

    • 游戏 牢骚 音乐 电影 游戏开发 足球
  • 日历

  • 随机日志

    • 梦想实现的一刻……
    • 我的c++笔记(一)
    • 我的C++笔记(七)
    • 独立游戏
    • 我的C++笔记(五)
    • C++与C#的不同(一)
    • C++与C#的不同(三)
    • 夜与流星雨
  • 碎语

    • 最新评论

      • wy
        请教,打印出来是mdi格式吗?
      • Vinci
        哈哈哈,听起来真不错,上古4我刚一出生就迷茫了,不知道该干啥,走走和卫兵打起来了,结果就挂了....
      • 狒狒王
        谢谢,博主,也祝你新年快乐,虎虎生威,吉祥如意!
      • Melody
        我用了上面的方法,还是不成啊.除了一本英文书由20M转换成了4M并成功看到,其它中文书都不成...郁闷的.不停地死机,刷机,够烦.800多页的书正转成TXT
      • idnemo
        多谢徒儿支持
      • 哞哞
        师父,您复活了
      • Tangboke
        文章深入浅出。
      • →龍少爺→
        恭喜也,呵呵
      • 艺术高考
        真牛比
      • Vinci
        。。。游戏bug啊~死神应该掉落一个物品,并且触发任务
      • Vinci
        我的捡起我的ps2玩一玩了~
      • Vinci
        ....在输入框的下边
      • idnemo
        是啊,我也纳闷,摘要在哪里,摘要栏又在哪里?
      • Vinci
        老沈,你的模版文字都变成了粗体,是因为你在这骗文章里插入了[break]么?去看看看,如果是,就把摘要写到摘要栏里即可
      • Vinci
        不错不错
    • 链接

      • emlog
      • 我的豆瓣
    • 存档

      • 2010年2月(3)
      • 2009年11月(1)
      • 2009年10月(1)
      • 2009年9月(3)
      • 2009年8月(1)
      • 2009年4月(1)
      • 2009年3月(1)
      • 2009年2月(2)
      • 2009年1月(1)
      • 2008年12月(1)
      • 2008年11月(1)
      • 2008年10月(2)
      • 2008年9月(1)
      • 2008年8月(4)
      • 2008年7月(2)
      • 2008年6月(4)
      • 2008年5月(5)
      • 2008年4月(4)
      • 2008年3月(4)
      • 2008年2月(4)
      • 2008年1月(4)
      • 2007年12月(5)
      • 2007年11月(5)
      • 2007年10月(5)
      • 2007年9月(7)
    • 搜索

    • 信息

      • 日志数量:72
      • 评论数量:154
      • 引用数量:3
      • 今日访问:47
      • 总访问量:120355
    • 豆瓣

    订阅Rss
    Powered by emlog