C++
pakacy
这个作者很懒,什么都没留下…
展开
-
lvalue和rvalue、传值和传引用、木桶
在ddj上看到一篇文章,针对初学者,不过我觉得还是有一定的难度的。本来想翻译过来,想想工作量会非常大,干脆结合自己的知识,总结几句。有兴趣的话可以参考原文“Computer Programming and Precise Terminology”。文中阐述了定义和声明的区别,写得很精彩,让大家了解了一些internals。由于我写过一篇相关的文章,因此这里不再啰嗦,想看的话可以参考“[原]C/C+原创 2009-05-24 10:47:00 · 514 阅读 · 0 评论 -
虚拟析构函数有什么用
构造函数不能用虚拟,因为用也没用,不管是在栈上构造对象,还是在堆上构造对象,也不管你以后是否使用父类的指针或引用来指向或引用这个对象,在构造的那“一瞬间”,总归要指明要构造对象的具体类型,所以,对象在构造过程中不存在运行时动态绑定的多态行为。 你理解这个意思吗?举了例子就明白了,通常,假如A是B的父类, A* p = new B(); 则对于虚拟函数f,可以通过A类的指针p直接调用到转载 2009-06-06 23:59:00 · 800 阅读 · 0 评论 -
strstr 函数功能与使用
strstr原型:extern char *strstr(char *haystack, char *needle); 用法:#include 功能:从字符串haystack中寻找needle第一次出现的位置(不比较结束符NULL)。 说明:返回指向第一次出现nee转载 2009-06-07 16:37:00 · 7803 阅读 · 1 评论 -
函数中省略号的意义和用法
某些情况下希望函数的参数个数可以根据需要确定。典型的例子有大家熟悉的函数printf()、scanf()和系统调用execl()等。那么它们是怎样实现的呢?C编译器通常提供了一系列处理这种情况的宏,以屏蔽不同的硬件平台造成的差异,增加程序的可移植性。这些宏包括va_start、va_arg和va_end等。 ---- 采用ANSI标准形式时,参数个数可变的函数的原型声明是: t转载 2009-08-22 12:05:00 · 1457 阅读 · 0 评论 -
华为的面试题,要求8分钟写出一段程序
华为的面试题,要求8分钟写出一段程序:有两个数组a,b,大小都为n,数组元素的值任意,无序;要求:通过交换a,b中的元素,使数组a元素的和与数组b元素的和之间的差最小 #include using namespace std;#define n 5int a[] = { 1,6,7,9,20};int b[] = { 2,6,18,19,22 };void swap(int &a,i原创 2009-06-19 18:00:00 · 823 阅读 · 0 评论 -
SetWindowExt和SetViewportExt
CRect rectClient; GetClientRect(rectClient); pDC->SetMapMode(MM_ANISOTROPIC); pDC->SetWindowExt(CSize(1000,1000)); pDC->SetViewportExt(re转载 2009-09-04 22:49:00 · 492 阅读 · 0 评论 -
C++ 关键字 作用
C++ 关键字 作用原创 2010-10-21 16:53:00 · 521 阅读 · 0 评论 -
在vs2010下学《directx9.0 3D 游戏开发编程基础》
书中,作者对在vc6.0和vs2005中的各种配置 已经写得很清楚了,vs2008 基本延续了 vs2005的设置,但是在vs2010中,貌似没有那种选项,因此,我就将我的方法,还有书中的一些章节和现在的变化说一下,首先是配置开发环境,vs2010中是需要针对每个项目进行设置,打开一个新建的项目文件,在项目属性中选择 C/c++目录,原文中的include文件可选择加入到 包含目录,lib/x86转载 2011-12-29 20:47:20 · 1412 阅读 · 0 评论 -
HLSL错误
error X3025: global variables are implicitly constant, enable compatibility mode to allow modification 全局变量是extern也是常量,在shader里面不能修改,但可以从宿主程序里改。以前的编译器没有强制这一点,现在新的强化了这一要求。把extern 改成static运行成功原创 2012-02-07 13:58:25 · 608 阅读 · 0 评论