Chinaunix首页 | 论坛 | 博客
  • 博客访问: 285733
  • 博文数量: 148
  • 博客积分: 4365
  • 博客等级: 上校
  • 技术积分: 1566
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-05 21:38
文章分类
文章存档

2014年(2)

2013年(45)

2012年(18)

2011年(1)

2009年(54)

2008年(28)

我的朋友

发布时间:2013-02-06 19:02:02

Chapter 15. Object-Oriented Programming1. 增加override关键字,派生类用此可显式表明重写了挂有此关键字基类的虚函数。好像c# java早就有了,阅读性增加了不少。2. 增加final关键字,在类名后面时表明一个类不能被用作基类,在一个虚函数后面时表示派生类不可重写此虚函数。//class base finalclass base{.........【阅读全文】

阅读(697) | 评论(0) | 转发(0)

发布时间:2013-02-06 17:16:09

在c++11中,一个callable object可以是函数指针、lambda表达式、重载()的某类对象、bind包裹的某对象等等,有时需要统一管理一些这几类对象,新增的function就是为此而生。function位于functional头文件,可以看做是那几类callable object的抽象表示。#include<iostream>#include<functional>using namespace std;.........【阅读全文】

阅读(1266) | 评论(0) | 转发(0)

发布时间:2013-02-04 12:25:10

这个绝对是新增的top特性,篇幅非常多。看着就有点费劲,总结更费劲。原来的标准当中,参数与返回值的传值形式涉及到对象的复制,传值完成后,中间产生的临时对象又会马上被销毁,某些自定义的对象或者容器有很多元素时复制的开销非常大,而且例如IO对象或unique_ptr对象也不允许复制;传址在返回值的某些场景又会有.........【阅读全文】

阅读(5836) | 评论(0) | 转发(0)

发布时间:2013-02-02 12:06:16

13章内容有点多,分开总结一下。1. 前面提过,在声明构造函数或考构或某运算符后面加“=delete”,表示此函数不可用。class base{public:base()= delete;base (const base&) = delete;};如果代码中有直接创建对象或使用拷贝构造函数的代码,编译会失败:error: use of deleted function 'base::base()'.........【阅读全文】

阅读(4873) | 评论(0) | 转发(0)

发布时间:2013-01-30 23:11:03

这一章相对第四版是新增的,主讲动态内存与智能指针,再次推荐了使用智能指针与各种容器来“操作”内存,避免直接和new打交道。1. shared_ptr,从boost那里过来的,内存保留与引用计数,多个对象可共享同一内存(上的对象),简单想一个IP数据包就明白了。强调慎重使用那个get()接口,避免误释放。2. unique_.........【阅读全文】

阅读(740) | 评论(0) | 转发(1)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册