本文主要参考《Effective C++
3rd》中的第六章部分章节的内容。关注的问题集中在继承、派生、virtual函数等。如:virtual? non-virtual? pure virtual?
缺省参数值与virtual函数有什么交互影响? 继承如何影响C++的名称查找规则? 什么情况下有比...
分类:
编程语言 时间:
2014-05-24 01:20:31
阅读次数:
468
Effective C++_笔记_条款05_了解C++默认编写并调用哪些函数
分类:
编程语言 时间:
2014-05-23 09:46:09
阅读次数:
300
资源:动态分配的内存、文件描述器、互斥锁、图形界面中的字型与笔刷、数据库连接以及网络sockets等,无论哪一种资源,重要的是,当你不再使用它时,必须将它还给系统。
条款13:以对象管理资源
当我们向系统申请资源后,一定要记得释放,不然就容易发生内存泄漏。但是意识到这样一件事并不是很容易,比如我们是通过一个函数来动态分配内存并返回一个指针。
Investment* ceateInve...
分类:
编程语言 时间:
2014-05-22 17:28:27
阅读次数:
340
条款01:视C++为一个语言联绑
C++的四个语言层次:
C:C++是以C为基础的。基本数据类型、语句、预处理器、数组、指针等统统来自C。Oject-Oriented C++:面向对象这一特性包含了:类,封装,继承,多态,虚函数等Template C++:C++的泛型编程能力。STL:一个标准的template库,里面介绍了容器、迭代器、算法以及函数对象等模板类和模板函数。
综述...
分类:
编程语言 时间:
2014-05-21 16:35:40
阅读次数:
265
Effective
C++_笔记_条款002_尽量以const、enum、inline替换#define。
分类:
编程语言 时间:
2014-05-19 19:45:55
阅读次数:
332
std::swap()是个很有用的函数,它可以用来交换两个变量的值,包括用户自定义的类型,只要类型支持copying操作,尤其是在STL中使用的很多,例如:int
main(int argc, _TCHAR* argv[]) { int a[10] = {1,2,3,4,5,6,7,8,...
分类:
编程语言 时间:
2014-05-19 15:22:41
阅读次数:
378
我也不知道为什么作者给这个条款起这样的名字,因为这样看上去重点是在“不抛出异常”,但事实上作者只是在全文最后一段说了一下不抛异常的原因,大部分段落是在介绍怎样写一个节省资源的swap函数。你可以试一下,只要包含了头文件iostream,就可以使用swap函数,比如:1
#include 2 3 in...
分类:
编程语言 时间:
2014-05-19 13:44:31
阅读次数:
423
DB2创建function(一),介绍将function内容作为字段值,或做为一个where条件的情况。DB2创建function(二),介绍建立返回的内容为表集合。调用示例如下select
* from table(GET_EFFECTIVE_USER_ID(21))--GET_EFFECTIVE...
分类:
数据库 时间:
2014-05-19 07:29:40
阅读次数:
712
第一章是引言,所以这里不做笔记,总结一下书中第一章的主要内容是向我们解释了这本书所做的事情:指导Java程序员如何编写出清晰、正确、可用、健壮、灵活和可维护的程序。
2.1考虑用静态工厂方法代替构造器
静态工厂方法与构造器相比有四大优势:
(1)静态工厂方法有名称,具有适当名称的静态工厂方法易于使用、易于阅读;
(2)不必每次在调用它们的时候都创建一个新的对象;
(3)可以返回原...
分类:
编程语言 时间:
2014-05-18 15:24:33
阅读次数:
307
断言:学java的时候学过断言,但一直用的很少,node中也有varassert=require(‘assert‘)
console.info(‘.......startapp.......‘);
varactual=1;
varexpect=‘1‘
vara;
//判断是否为真
assert(a,‘isnotvalid‘);
assert.ok(0,‘isnoteffective‘);
//arg[0]为真实值,arg[1]期望值,a..
分类:
Web程序 时间:
2014-05-15 09:09:47
阅读次数:
373