摘要: 万事开头难,先从main函数开始吧。1 每个C++ 程序必须含有main函数2 操作系统通过调用main函数来执行程序,并且main函数是唯一被操作系统显示调用的函数3 在大多数系统中,main函数的返回值是一个状态指示器,返回0表示成功执行完毕。其他非0返回值均有每个操作系统各自定义的含义。接着想介绍main函数的参数时,却发现看不到相关介绍,正在疑惑之时,看到文中一小提示:7.2.6节将介绍main函数中可定义的其他形参。于是翻到那里:带有参数的main函数:int main(int argc, char *argv[] ){........}也可以表示为:int main(int arg 阅读全文
posted @ 2011-03-13 11:44 毛志谦 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 最近要做一个美术UI资源打包工具,即是把一堆零碎的小图片整合在几张指定规格的大图片上,需要用到图形库DevIL。开始在VC工程里加入DevIL时弄了N久很没成功,后来和同事讨论了下,逐渐明朗了。和大家分享一下在VC中引用库的相关设置。 先介绍一下DevIL库的目录和文件结构:: include下: : lib下: 操作步骤:1 先将整个库文件夹放到自己工程目录下,例如工程为project,则放在目录为:project/DevIL......2 在工程添加lib文件:3 设置附加库路径:4 将相应的dll文件放到工程工作目录下(与生成的exe文件同一目录):5 将库头文件包含目录加入工程的附加包 阅读全文
posted @ 2011-03-09 13:30 毛志谦 阅读(974) 评论(0) 推荐(0) 编辑
摘要: 今天因工作需求要用到一个图形库,偏偏这个库却几乎没有中文资料,郁闷之至,大叹自己的英文之穷困潦倒。一直觉得英文对我们来说不是那么重要,最近越来越感觉到,是应该要恶补恶补了。偶尔写个变量的命名都要查在线翻译,说出来真的贻笑大方。回头望去,好像自己的英语在高考后就开始退化,直到大三急了下狠心花了一个月恶补过了四级,之后就继续退化了。现在对英语只是有点依稀的感觉了。 嗯,有空看看英语吧。 阅读全文
posted @ 2011-03-08 21:57 毛志谦 阅读(256) 评论(1) 推荐(0) 编辑
摘要: 当使用CInternetSession::OpenUrl获取网络上的文件时,若网络异常或文件不存在导致文件访问不了,OpenUrl则会抛出异常,而以捕获异常的方式处理这个情况往往是不合理的。例如:加壳过的程序则有可能捕获不了这个异常。 于是,我们可以通过在使用OpenUrl前先判断指定的URL是否可访问来避免这个异常。如下: HINTERNET hOpen = InternetOpen (NULL,PRE_CONFIG_INTERNET_ACCESS,NULL, NULL, 0); HINTERNET hRequest = InternetOpenUrl (hOpen, url,NULL, . 阅读全文
posted @ 2011-02-22 23:13 毛志谦 阅读(990) 评论(0) 推荐(1) 编辑
摘要: 终于把这本书完完整整地阅读了一遍。 书中内容涉及技术面之广,知识点之详细,让读者叹为观止,以至很多人认为这只能作为查阅的手册而已。 然而,我终究把它给啃下来了。 这是我目前为止读到的有关C++ 最好的一本书。类似于读过本书的人都会推荐去读一样,这也是我极力推荐的C++必读之物。 一直觉得,看书只看一遍,只能略懂皮毛。再看,能知晓一二。多看,才能深得其意。 好书,需要我们不断去阅读,去思考。每读一次,均会领略到新的知识,新的感悟,新的人生。 开始进行C++ Primer 的第二次阅读之旅,在此分享我的阅读点滴,思想感悟。 阅读全文
posted @ 2011-02-21 08:45 毛志谦 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 我想说的是在工作上的放心。 最近游戏版本有大版本更新,连续几天有相关的更新测试操作,我是负责这一块的,神经一直蹦得紧紧的,晚上睡觉也不敢关手机了,怕有事情要自己去解决。 后来逐渐明朗了。一想到有人可能会咨询自己的相关工作,则提前向相关的同事说明白,而不是等那同事遇到疑惑的再来问,这就往往处于被动境地。 把事情说明白了,则心里就像放了块定心石,安安稳稳的。 这应该属于工作的主动性范畴,有事情自己主动去解决,而不是等问题来了再解决。 阅读全文
posted @ 2011-01-27 22:23 毛志谦 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 今天调试一个游戏逻辑系统时发现前两天做的一些功能失效了,诧异不已。后来查了N久,才发现,被同事改了一段代码。而这段代码是在他的模块响应我这边的模块接口。也许是出于好心,也许是为了规划其模块的代码,终究是改了。 我觉得,在处理非自己写的代码上,无论代码好坏,首先要做的是和原代码编写者交流,这样才能弄清代码的来龙去脉,而不是单看表面就轻易下结论。 阅读全文
posted @ 2011-01-19 22:16 毛志谦 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 什么是双指针? 例如:char **p; p即为双指针。 当我们需要修改指针变量本身的值的时候,可以使用双指针。 先看一个示例:voidgetmemory(char*ptr){ ptr=(char*)malloc(20);}voidgetbuffer(){ char*buffer=NULL; getmemory(buffer); } 示例想要修改buffer本身这个指针的值,但是getmemory(buffer)之后,buffer的值还是NULL。由于ptr是局部变量,对ptr做修改无法反馈到getbuffer域中。 修改为以下示例即可:voidgetmemory(char**p){*p=(c 阅读全文
posted @ 2011-01-19 18:51 毛志谦 阅读(512) 评论(0) 推荐(0) 编辑
摘要: 前一阵子专负责游戏工具那块时,感觉有点闲,于是便主动要了一些游戏客户端逻辑系统来做做,现在却忙得走不开了。 怎样去评价游戏客户端逻辑这一块呢?说难吧,一看下去好像没啥技术难点,说易吧,三天两头也完成不了,而且这还不是机械性的工作。 游戏客户端逻辑是游戏服务器和UI控件的交互层,主要是组织服务器传输过来的数据,显示在特定的UI控件上。现在客户端逻辑几乎都是在用脚本来处理,为其便利性和易改性。 所谓逻辑,有点像脑海里的思维。做游戏逻辑思维想不活跃都不行。数据就像一条河,无定向地兜向这边,兜向那边。相对于算法来说,游戏逻辑里处处都是算法,却又不像算法,因为只是很简单的一段逻辑而已,难登大雅之堂。 有 阅读全文
posted @ 2011-01-18 21:44 毛志谦 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 今天部门群里发了一则各同事的一周代码量统计,引起一些同事的异议。其实对于这类事情,往往会一笑而过。大家能力怎样,平时有目共睹,各自的技术水平大家心里都有数。诸如代码量之类的只有增添笑料罢了。怎样去衡量一个程序员的能力,那只能见仁见智了。我觉得,由每个同事分别评价是一个不错的方式。 阅读全文
posted @ 2011-01-17 19:50 毛志谦 阅读(162) 评论(0) 推荐(0) 编辑