C++读书笔记
geeglet
这个作者很懒,什么都没留下…
展开
-
c++ 零值比较
参考:http://www.cnblogs.com/taoxu0903/archive/2011/03/11/1981389.html http://blog.csdn.net/andkobe/article/details/69660041).int型变量 n 与“零值”比较的 if 语句就是:if ( n == 0 )if ( n != 0 )如下写法均属不良转载 2012-11-12 15:01:30 · 482 阅读 · 0 评论 -
虚函数\纯虚函数
虚函数:派生类一般会重定义所继承的虚函数,如果派生类没有重定义某个虚函数,则使用基类中定义的版本。派生类中虚函数的声明必须与基类中的定义方式完全匹配,但有一个例外:返回对基类型的引用或指针的虚函数,派生类中的虚函数可以返回基类型的派生类的指针或引用。函数在基类中声明为虚函数,它就一直是虚函数,派生类无法改变该函数为虚函数这一事实。派生类重定义虚函数时,可以使用virtual保留字,但不原创 2012-11-12 14:55:27 · 299 阅读 · 0 评论 -
assert
assert 语法: #include void assert( int exp );功能: 宏assert()用于错误检测。如果表达式的结果为零,宏写错误信息到STDERR并退出程序执行。如果宏NDEBUG已经定义,宏assert()将被忽略。 其他参考:assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义如下:转载 2012-11-13 13:11:25 · 633 阅读 · 0 评论 -
const小结
1.const对象const 限定符提供了一个解决办法,它把一个对象转换成一个常量。因为常量在定义后就不能被修改,所以定义时必须初始化:const std::string hi = "hello!"; // ok: initializedconst int i, j = 0; // error: i is uninitialized constconst 对象默认为文件的局部变量。转载 2012-11-15 23:44:29 · 716 阅读 · 0 评论 -
malloc/realloc/calloc/free
mallocmalloc函数: 向系统申请分配指定size个字节的内存空间。返回类型是 void* 类型。void* 表示未确定类型的指针。C,C++规定,void* 类型可以强制转换为任何其它类型的指针。原型:extern void *malloc(unsigned int num_bytes);功能:分配长度为num_bytes字节的内存块返回值:如果分配成功则返回指向被分配内转载 2012-11-16 13:43:48 · 482 阅读 · 0 评论 -
static 和 存储区
static static 数据类型用来给变量创建永久存储空间.静态变量在函数间调用时保持他们的值不变.当用在一个类中时,所有要用到静态变量的时候这个类将把这个变量镜像过去.C#与C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。 面向过程的static1转载 2012-11-16 16:17:54 · 1665 阅读 · 0 评论 -
#define、预处理、头文件保护符
一、#define//定义宏 #define [MacroName] [MacroValue] //取消宏 #undef [MacroName] //普通宏 #define PI (3.1415926) //带参数的宏 #define max(a,b) ((a)>(b)? (a),(b)) #define命令是C/C++语言中的一个宏定义命令,它用来将一个标识符定义为转载 2012-11-12 16:25:17 · 7802 阅读 · 1 评论 -
strlen/strcpy...等string.h(csting)中的常用函数
strlen #include size_t strlen( char *str );The strlen() function returns the length of str (determined by the number of characters before null termination).说明:返回s的长度,不包括结束符NULL。strcmp #i转载 2012-11-17 11:24:41 · 790 阅读 · 0 评论 -
覆盖
以下代码的输出结果是什么?#includeusing namespace std; class A { protected: int m_data; public: A(int data = 0):m_data(data){} int GetData() { return doGetData(); } virtual int doGetData()转载 2012-11-20 23:01:00 · 321 阅读 · 0 评论