铅笔

在你的害怕中坚持的越多,你就会越自信
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2016年12月13日

摘要: (1)非空区别。在任何情况下都不能使用指向空值的引用。一个引用必须总是指向某些对象。因此如果你使用一个变量并让它指向一个对象,但是该变量在某些时候也可能不指向任何对象,这时你应该把变量声明为指针,因为这样你可以赋空值给该变量。相反,如果变量肯定指向一个对象,例如你的设计不允许变量为空,这是你就可以把 阅读全文

posted @ 2016-12-13 12:32 黑色の铅笔 阅读(193) 评论(0) 推荐(0)

摘要: 内联函数和普通函数相比可以加快程序运行的速度,因为不需要中断调用,在编译的时候内联函数可以直接被镶嵌到目标代码中。宏只是一个简单的替换。 内联函数要做参数类型检查,这是内联函数跟宏相比的优势。 inline是指嵌入代码,就是在调用函数的地方不是跳转,而是把代码直接写到那里去。对于短小的代码来说,in 阅读全文

posted @ 2016-12-13 12:25 黑色の铅笔 阅读(210) 评论(0) 推荐(1)

摘要: 1> 内联函数 内联函数是在编译时期展开,而虚函数的特性是运行时才动态联编,所以两者矛盾,不能定义内联函数为虚函数。 虚表机制需要一个真正的函数地址,而内联函数展开以后,就不是一个函数,而是一段简单的代码(多数C++对象模型使用虚表实现多态,对此标准提供支持) 2> 构造函数 构造函数用来创建一个新 阅读全文

posted @ 2016-12-13 10:48 黑色の铅笔 阅读(356) 评论(0) 推荐(0)

摘要: C++中,类的对象建立分为两种,一种是静态建立,如A a;另一种是动态建立,如A* ptr=new A;这两种方式是有区别的。 静态建立一个类对象,是由编译器为对象在栈空间中分配内存,是通过直接移动栈顶指针,挪出适当的空间,然后在这片内存空间上调用构造函数形成一个栈对象。使用这种方法,直接调用类的构 阅读全文

posted @ 2016-12-13 10:38 黑色の铅笔 阅读(1200) 评论(0) 推荐(0)

摘要: 基础:c++中,什么时候用 A a;和什么时候用A a=new A; 说明: 1、全局对象和局部对象的生命期都是严格定义的,程序员不能以任何方式改变他们的生命期。但是有时候需要创建一些生命期能被程序员控制的对象,他的分配和释放可以根据程序运行中的操作来决定。这时就需要使用new操作符了。 2、 动态 阅读全文

posted @ 2016-12-13 10:21 黑色の铅笔 阅读(182) 评论(0) 推荐(0)