花费 642ms 找到912197条记录
1 .C++ primer第二次阅读学习笔记(第18特殊工具技术优化内存分配
2012年05月30 - 第十八章:特殊工具技术优化内存分配 C++类型分配是一个类型化操作:new特定类型分配内存,并在新分配内存中构造对象。new表达式会为每个动态分配的类自动调用构造函数。但有些时候需要将内存分配与对象构造分开,因为对预先分配,但以后却不使用的对象进行构造很是浪费
2 C++ primer第二次阅读学习笔记(第17:用于大型程序的工具:异常处理)
2012年05月29 - 第十七:用于大型程序的工具:异常处理 现对于小型的软件系统,大规模编程对程序设计语言和程序员的要求更高,它们往往具有以下要求: 1:更严格的正常运转时间以及更强壮的错误检测和错误处理。 2:运用各种库进行开发。 3:能够处理更复杂的应用概念。 C++中所具有
3 C++ primer第二次阅读学习笔记(第17:用于大型程序的工具:命名空间)
2012年05月29 - 第十七:用于大型程序的工具:命名空间 在一个给定的作用域中定义的每个名字,在该作用域中必须是唯一的。对庞大、复杂的应用程序而言,这个很难满足。由独立开发的库构成的复杂程序更有可能遇到名字冲突,因为库倾向于使用全局名字:模板名、类型名或函数名。命名冲突问题被称为:命名空间污染
4 C++ primer第二次阅读学习笔记(第9: 顺序容器)
2012年05月20 - ,那么vector必须重新分配更大的空间,然后将旧空间的数据复制到新空间内,接着插入元素,最后撤销旧空间。而对于list来说却不存在这个问题。为了是vector实现快速内存分配,vector容器预留了额外的存储区,用于存放新添加的元素,不必每添加一个新元素就必须重新分配容器。所分配的额外内存容量,因库的实现
5 C++ primer第二次阅读学习笔记(第10:关联容器)
2012年05月21 - 运算,它返回指向该元素的迭代器(如果存在的话)。在获得某元素的迭代器之后只能对其做读操作不能修改,因为键是const类型的。 count返回值只能为0或1。 各种容器的许多操作都是类似的,C++primer在介绍set时省略了很多,详细用法请参考其他资料。 multimap
6 C++ primer第二次阅读学习笔记(第6
2012年05月17 - 第六 在switch中只有在最后一个case或是default语句之后才能定义变量,之所以这样规定是为了避免代码跳过变量定义和初始化。 如switch(val) { case xx: break; case yy: int i
7 C++ primer第二次阅读学习笔记(第5
2012年05月16 - 差别,类的默认构造函数都会被调用。 堆空间可能会被耗尽,因此动态申请内存可能会失败。动态内存交换并不能保证堆空间随用随有。 delete动态申请的空间之后要将指针置为NULL,否则将变成野指针。有可能被误用。两对同一块堆空间调用delete可能会导致堆空间被破坏
8 C++ primer第二次阅读学习笔记(第13:复制控制)
2012年05月23 - 第十三章:复制控制 如果没有显式定义复制构造函数、赋值操作符,编译器通常为我们定义。 复制构造函数是一种特殊的构造函数,具有单个形参,该形参为对该类类型的引用。当定义一个新对象,当将该类型的对象传递给函数或从函数返回该类型的对象时将隐式使用复制构造函数。 复制构造函数
9 C++ primer第二次阅读学习笔记(第16:模板与泛型编程) .
2012年05月28 - 的,因此将类定义和函数声明放在头文件中,而普通函数和类成员函数的定义放在源文件中。 模板不同,要进行实例化,编译器必须能够访问定义模板的源代码。当调用函数模板或类模板的成员函数时,编译器需要函数定义,需要哪些通常放在源文件中的代码。《C++primer》为编译模板代码定义了两种类型。分别为包含编译模型
10 C++ primer第二次阅读学习笔记(第1、2
2012年05月15 - C++ primer第二次阅读学习笔记(第1、2) 一年前开始了C++primer的第一遍阅读,一年之后重新拾起C++primer。原因有二,一:第一遍阅读时刚开始接触C++,对C++认识有限,学习C++primer不可能有多么深刻的理解,一年的开发

 
© 2014-2019 ITdaan.com 粤ICP备14056181号