前些日子发觉我应该写好很多东西才慢慢放到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++的。
C++笔记之基本语法篇
for和while的区别:
for(1;2;3)
{
4
}
1
while(2)
{
4
3
}
将两个int做除法的结果赋值给一个float时,会自动截断成为一个int。要得到正确的结果,须将其中的一个int强制类型转换成float,无论是分子还是分母。
传址作用:避免复制和在函数中修改。对于制作大型游戏来说,C系语言的最大好处。用4个字节的访问量代替了大量的数据传值,对于内置类型看不出效率的提高,但若是一个数据量庞大的3D模型或者位图来讲,这就是数量级的速度提升了。如果没有指针或引用,2G内存也不够用。
void display(const vector<XXX> &vec)
1、const表明程序想避免复制操作,而不是为了要在函数中修改。
2、大型对象需要传址,内置类型传值。(泛型编程时,统一传址)
内置类型在文件作用域被初始化为0,但是在局部作用域不初始化,这将带来未定义行为,危险!
保持初始化变量的强迫性神经症。
以参数传递作为函数间的沟通方式,而非全局变量。也可以用静态变量。
默认参数的右边必须全部是默认参数,默认形参只能指定一次,最好是放在头文件的声明处。
