随笔分类 -  C/C++

上一页 1 2 3 4 下一页

C++ primer plus读书笔记——第12章 类和动态内存分配
摘要:第12章 类和动态内存分配1. 静态数据成员在类声明中声明,在包含类方法的文件中初始化。初始化时使用作用域运算符来指出静态成员所属的类。但如果静态成员是整形或枚举型const,则可以在类声明中初始化。P426-P427类静态成员的声明和初始化 //strnbad.h class StringBad ... 阅读全文

posted @ 2016-01-06 18:12 lakeone 阅读(606) 评论(0) 推荐(0)

C++ primer plus读书笔记——第11章 使用类
摘要:第11章 使用类1. 运算符重载是一种形式的C++多态。2. 不要返回指向局部变量或临时对象的引用。函数执行完毕后,局部变量和临时对象将消失,引用将指向不存在的数据。3. 运算符重载的格式如下: operatorop(argument-list); 可以使用函数表示法或运算符表示法来使用它。 tot... 阅读全文

posted @ 2016-01-06 18:11 lakeone 阅读(304) 评论(0) 推荐(0)

C++ primer plus读书笔记——第9章 内存模型和名称空间
摘要:第9章 内存模型和名称空间1. 头文件常包含的内容:函数原型。使用#define或const定义的符号常量。结构声明。类声明。模板声明。内联函数。2. 如果文件名被包含在尖括号中,则C++编译器将在存储标准头文件的主机系统的文件系统中查找。但如果头文件名包含在双引号中,则编译器将首先查找当前的工作目... 阅读全文

posted @ 2016-01-06 18:09 lakeone 阅读(934) 评论(0) 推荐(0)

C++ primer plus读书笔记——第10章 对象和类
摘要:第10章 对象和类1. 基本类型完成了三项工作: 决定数据对象需要的内存数量; 决定如何解释内存中的位; 决定可使用数据对象执行的操作或方法。2. 不必在类声明中使用关键字private,因为这是类对象的默认访问控制机制。3. 其定义位于类声明中的函数都将自动成为内联函数。4. 如果愿意,也可以在类... 阅读全文

posted @ 2016-01-06 18:09 lakeone 阅读(348) 评论(0) 推荐(0)

C++ primer plus读书笔记——第8章 函数探幽
摘要:第8章 函数探幽1. 对于内联函数,编译器将使用相应的函数代码替换函数调用,程序无需跳到一个位置执行代码,再调回来。因此,内联函数的运行速度比常规函数稍快,但代价是需要占用更多内存。2. 要使用内联函数,需要在:函数声明前加上关键字inline;函数定义前加上关键字inline;3. 程序员请求将函... 阅读全文

posted @ 2016-01-06 18:08 lakeone 阅读(687) 评论(0) 推荐(0)

C++ primer plus读书笔记——第6章 分支语句和逻辑运算符
摘要:第6章 分支语句和逻辑运算符1. 逻辑运算符的优先级比关系运算符的优先级低。2. &&的优先级高于||。3. cctype中的函数P179。4. switch(integer-expression)括号里必须是一个整数表达式,最常见的是int或char,也可以是枚举量。5. P190~P197复习简... 阅读全文

posted @ 2016-01-06 18:07 lakeone 阅读(223) 评论(0) 推荐(0)

C++ primer plus读书笔记——第7章 函数——C++的编程模块
摘要:第7章 函数——C++的编程模块1. 函数的返回类型不能是数组,但可以是其他任何一种类型,甚至可以是结构和对象。有趣的是,C++函数不能直接返回数组,但可以将数组作为结构或对象的组成部分来返回。2. 在C++中括号为空意味着不指出参数。在ANSI C中,括号为空意味着不指出参数。在C++中,不指定参... 阅读全文

posted @ 2016-01-06 18:07 lakeone 阅读(461) 评论(0) 推荐(0)

C++ primer plus读书笔记——第5章 循环和关系表达式
摘要:第5章 循环和关系表达式1. cout.setf(ios_base::boolalpha); cout 3) 前缀 > *前缀递增、前缀递减和解除引用运算符的优先级相同,以从右向左的方式进行结合。后缀递增和后缀递减的优先级相同,但比前缀运算符的优先级高,这两个运算符以从左到右的方式进行结合。4.... 阅读全文

posted @ 2016-01-06 18:06 lakeone 阅读(318) 评论(0) 推荐(0)

C++ primer plus读书笔记——第4章 复合类型
摘要:第4章 复合类型1. 如果将sizeof运算符用于数组名,得到的将是整个数组中的字节数。2. 如果对数组的一部分进行初始化,则编译器把其他元素设置为0。因此,将数组中的所有元素初始化为0,只要显式地将第一个元素初始化为0。如long totals[500] = {0};C++的大括号初始化(列表初始... 阅读全文

posted @ 2016-01-06 18:05 lakeone 阅读(467) 评论(0) 推荐(0)

C++ primer plus读书笔记——第3章 处理数据
摘要:第3章 处理数据1. C++对于变量名称的长度没有限制,ANSI C只保证名称中的前63个字符有意义(前63个字符相同的名称被认为是相同的,即使第64个字符不同)。2. 对类型名(int)使用sizeof运算符时,应将名称放在括号中,但对变量名(n_short)使用该运算符时,括号是可选的。3. i... 阅读全文

posted @ 2016-01-06 18:03 lakeone 阅读(292) 评论(0) 推荐(0)

C++ primer plus读书笔记——第2章 开始学习C++
摘要:第2章 开始学习C++1. endl确保程序继续运行前刷新输出(将其立即显示在屏幕上),而使用“\n”不提供这样的保证,这意味着在有些系统中,有时可能在您输入信息后才会出现提示。2. C++中关键字和括号间可加空格或不加return(0);return (0);int main();int main... 阅读全文

posted @ 2016-01-06 18:02 lakeone 阅读(177) 评论(0) 推荐(0)

C++ primer plus读书笔记——第1章 预备知识
摘要:第1章 预备知识1. Ritchie希望有一种语言能将低级语言的效率、硬件访问能力和高级语言的通用性、可移植性融合在一起,于是他在旧语言的基础上开发了C语言。2. 在C++获得一定程度的成功后,Stroustrup才添加了模版,这使得进行泛型编程成为可能。3. Linux中要支持C++11,编译源文... 阅读全文

posted @ 2016-01-06 18:01 lakeone 阅读(198) 评论(0) 推荐(0)

C++将数值转换为string
摘要:std::to_stringstring to_string (int val);string to_string (long val);string to_string (long long val);string to_string (unsigned val);string to_string... 阅读全文

posted @ 2015-12-19 21:34 lakeone 阅读(1173) 评论(0) 推荐(0)

关于有符号数和无符号数的转换 - C/C++
摘要:转载自:http://www.94cto.com/index/Article/content/id/59973.html1.引例:今天在做了一道关于有符号数和无符号数相互转换及其左移/右移的问题,被它们之间的转换原理和位移原理搞得头大了。真的很后悔本科的时候没有认真学习《计算机组成原理》/《计算机操... 阅读全文

posted @ 2015-11-22 10:07 lakeone 阅读(4900) 评论(0) 推荐(0)

char值不能直接用作数组下标
摘要:#include //用 char 的值作为数组下标(例如,统计字符串中每个字符出现的次数),要考虑到//char 可能是负数。有的人考虑到了,先强制转型为 unsigned int 再用作下标,这仍然//是错的,因为char会先字节扩展变为int,再从int变为unsigned int。//正确的... 阅读全文

posted @ 2015-11-22 10:06 lakeone 阅读(2318) 评论(0) 推荐(0)

不能用==判断两个浮点数相等
摘要:在判断两个浮点数 a 和 b 是否相等时,不要用 a==b,应该判断二者之差的绝对值fabs(a-b) 是否小于某个阈值,例如 1e-9。////在判断两个浮点数 a 和 b 是否相等时,不要用 a==b,应该判断二者之差的绝对值////fabs(a - b) 是否小于某个阈值,例如 1e-9。//... 阅读全文

posted @ 2015-11-21 21:54 lakeone 阅读(8024) 评论(0) 推荐(0)

dynamic_cast和typeid
摘要:1. C++有三个支持RTTI的元素。如果可能的话,dynamic_cast运算符将使用一个指向基类的指针来生成一个指向派生类的指针,否则,该运算符返回0——空指针。typeid运算符返回一个对type_info对象的引用。type_info结构存储了有关特定类型的信息。只能将RTTI用于包含虚函数... 阅读全文

posted @ 2015-11-05 10:45 lakeone 阅读(499) 评论(0) 推荐(0)

C++ string的size()和length()函数没有区别
摘要:C++标准库中的string中两者的源代码如下: size_type __CLR_OR_THIS_CALL length() const { // return length of sequence return (_Mysize); } size_type __CLR_... 阅读全文

posted @ 2015-08-27 20:48 lakeone 阅读(22323) 评论(1) 推荐(6)

leecode之Implement strStr()
摘要:KMP算法的实现:#include #include #include int strStr(char* haystack, char* needle) { if (haystack == NULL || needle == NULL) return -1; if (nee... 阅读全文

posted @ 2015-05-29 11:02 lakeone 阅读(225) 评论(0) 推荐(0)

C++ 中指针和引用的区别
摘要:C++ 中指针和引用的区别(摘自网络)引用和指针★ 相同点:1. 都是地址的概念;指针指向一块内存,它的内容是所指内存的地址;引用是某块内存的别名。★ 区别:1. 指针是一个实体,而引用仅是个别名;2. 引用使用时无需解引用(*),指针需要解引用;3. 引用只能在定义时被初始化一次,之后不可变;指针... 阅读全文

posted @ 2015-01-20 19:54 lakeone 阅读(319) 评论(0) 推荐(0)

上一页 1 2 3 4 下一页

导航