《深入应用C++11:代码优化与工程级应用》勘误表
转自:http://www.cnblogs.com/qicosmos/p/4562174.html
整理一下吧,原文好乱。。。。。。。。。。。。。。。
page 4, 倒数第9,10行注释中的变量名e和f应该改为g和h
page16, 第二行 "c++" 应为 "c++98/03"; page21, 第一段代码返回处为 "ret val" ,应为 "val;"; page61, 最后一行 "tuple<constchar*, int>tp" 应为 "tuple<const char *, int> tp"
page21, 关于模板参数的顺序搞错了,现更正如下:
但需要注意的是,在调用函数模板时,若显示指定模板的参数,由于参数填充顺序是从左往右的,因此,像下面这样调用:
func<long>(123); // func的返回值类型是long
函数模板func的返回值类型是long,而不是int,因为模板参数的填充顺序从左往右,所以指定的模板参数类型long会作为func的返回值类型而不是参数类型,最终func的返回类型为long。
page 28, 倒数第二行“而对于非集合类型,则需要先自定义一个合适的构造函数”中的“非集合类型”应该改为“非聚合类型”。
page62, 代码段"auto tp = return std::tie(1, "aa", 2);"语法错误,要去掉return,tie不能绑定右值,应该改为:
int x = 1;
int y = 2;
string s = "aa";
auto tp = return std::tie(x, s, y);
接下来一段代码中"constchar*" 应为 "const char *","tp.get"应该改为“std::get”
page62, 介绍forward_as_tuple的用法写错了,应该改为:
std::map<int, std::string> m;m.emplace(std::piecewise_construct,std::forward_as_tuple(10),std::forward_as_tuple(20, 'a'));
page 63, 第二行“第2章”应该改为“第3章”。
page68, 代码"int&& var1 = x; //var1"应该改为"int&& var1 = 1; //var1", 这个问题由读者YZB_OO7指出,在此表示感谢。
68页“其中,var1的类型是一个左值类型”,应该改为“其中,var1的类型是一个右值类型”,由网友低调指出,再次表示感谢。
69页:
将输出如下结果:
...
rvalue : 1
lvaue : 2 此处应该为 lvalue : 2
page74,倒数第二和第三行"_len"和"_data"应该为"m_len"和"m_data"。
page 173,代码清单5-2中,both函数写到Complex类的外面了,应该放里面。
80页: FuncWrapper(test0) ; // 没有返回值, 打印 1 此处应该是打印void
page93,第二行decay的描述不太准确,应该是移除引用和cv,函数或数组退化为指针。
page99第二段和第三段代码中的很多空格被被吃掉了。
page101,"returnt"应该改为"return t"。
page107,109, "structSum"应该为"struct Sum";
page108,第二段代码中 "sizeof (First);" 应该为 "sizeof(Last);"。
99页auto const typedef后少空格
104页最后和105页上面,模板的声明对不上
page110,第二行 "MakeIndexes<1,2,3>::type" 应该为 "MakeIndexes<3>::type"; page121, 注释 "不带参数的 lamda" 应该为 "不带参数的 lambda", 下一行的 "return12" 应为 "return 12"
page122, 最后一段代码的错误:pMax, pGet 后文写成了 PMax PMin, hMode 后文写做 hDLL;
page124, 函数名“ExcecuteFunc”应该为"ExecuteFunc"。
page113, 最下面的Instance函数中缺少了模板参数T。
page126, 第一段代码中的 "return0;" 应为 "return 0;",
page127, Then的实现中"[func, &f]"应改为"[func, f]", p
age129, 第8行"emplate"应该为"template",
page136, 第8行"it->first"应该为"v", 最后三行中Integer Max应该为IntegerMax;
133页的那个测试函数下:
PrintType<function_traits<std::function<int(int)>>::args<0>>(); //这句有问题,在args<0>后面少了type
应该改为:
PrintType<function_traits<std::function<int(int)>>::args<0>::type>();
page137, 第4行MaxType应该为IntegerMax;
page141, 3.3.9 上面的一段是属于3.3.2lazy的那一节,不应该在这里。
page 155, 倒数第5行"std::uniq_ptr"应该改为“std::unique_ptr“。
158页,第三行代码"return stared_ptr<S>(this);"类型S应该是A。
page 156, 倒数第三行代码newint应该为new int
158页
shred_ptr<A>GetSelf(){return shared_ptr<S>(this); 此处S应为A}int main() {return0; 此处应为 return 0;}
page 177,倒数第三行语句unique_lock多写了一个,应该去掉一个。
page212,第二行,应该是"否则返回false."
page260, foo函数里,根据结果运行图10-3和编译调试,foo的输出应该为:
cout << "real foo function:" << a << endl; 而不是书中写到是real HT function
page337, 第三行缺少一个"]"符号;
page352, 两个count函数应该改为:
auto count() const -> decltype(std::distance(begin(), end()))
{return std::distance(begin(), end());
}template<typename F>
auto count(const F& f) const -> decltype(std::count_if(begin(), end(), f))
{return std::count_if(begin(), end(), f);
}
page355, 第二行"decltype(begin())"应该改为"decltype(boost::make_iterator_range(std::find_if_not(begin(), end(), f), end()))"
page359, TestLinqCpp()里变量vct应该为v,min和max应该改为Min和Max。
page 406, 多写了一个AsyncSend函数。
《深入应用C++11:代码优化与工程级应用》勘误表相关推荐
- 勘误表《网络规划设计师考试考点分析与真题详解》
<网络规划设计师考试考点分析与真题详解>勘误表 首先,对本书在编写.校对.排版.印刷环节中的错漏,而给各位读者带来不便之处,深表最诚挚的歉意!也恳请各位专家.读者在使用过程中多提宝贵意见及 ...
- 新书预告《网络规划设计师考试考点分析与真题详解》
新书预告<网络规划设计师考试考点分析与真题详解> 一年前,出版社有意与我约<网络规划设计师考试考点分析与真题详解>稿件,鉴于网络规划设计师是一门刚开考的考试科目,从一个事物的生 ...
- ★核心关注点_《信息系统项目管理师考试考点分析与真题详解》
★核心关注点_<信息系统项目管理师考试考点分析与真题详解> 真诚感谢你选用<信息系统项目管理师考试考点分析与真题详解>作为高级项管的辅导用书.对于使用该书的读者们,在备考201 ...
- 致广大关注《网络规划设计师考试案例梳理、真题透解与强化训练》读者朋友的一封信...
致广大关注<网络规划设计师考试案例梳理.真题透解与强化训练>读者朋友的一封信 书是人类进步的阶梯,读书是增强个人软实力的佳径. 好读书是你的美德,读好书是你的选择,书好读是我们的承诺! 如 ...
- 视频教程-2020年软考网络规划设计师案例分析历年真题详解软考视频教程-软考
2020年软考网络规划设计师案例分析历年真题详解软考视频教程 10年以上软考培训经验,线下培训学员过万人.培训过的课程有:网络规划设计师.网络工程师.信 息系统项目管理师.系统集成项目管理师.信息安全 ...
- 2011年给力新作——《数据库系统工程师考试案例梳理、真题透解与强化训练》...
2011年给力新作--<数据库系统工程师考试案例梳理.真题透解与强化训练> 本书是为有志于通过全国计算机专业技术资格考试(数据库系统工程师)的读者编写的一本针对性强.高效的案例辅导用书,并 ...
- 网络管理员考试案例梳理、真题透解与强化训练
<网络管理员考试案例梳理.真题透解与强化训练>已下厂印刷,即将上市<?xml:namespace prefix = o ns = "urn:schemas-microsof ...
- 研究生专业课计算机科学基础,计算机学科专业基础综合科目408综合教程及历年真题详解(最新版全国硕士研究生招生考试计算机科学与技术学科联考)...
导语 内容提要 开点工作室编著的<计算机学科专业基础综合科目<408>综合教程及历年真题详解(最新版)>作为全国硕士研究生招生考试中计算机科学与技术专业的计算机专业基础综合科目 ...
- 全国计算机信息处理,全国计算机技术与软件专业技术资格(水平)考试《信息处理技术员(初级)》复习全书【核心讲义+历年真题详解】...
一.精准对标考纲要求 本资料严格对标<信息处理技术员>考试大纲要求,覆盖了信息技术基本概念.信息理基础知识.计算机系统基础知识.操作系统使用和文件管理的基础知识.文字处理基础知识.电子表格 ...
- 《网络管理员考试案例梳理、真题透解与强化训练》复习重点
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> <网 ...
最新文章
- 独家 | 数据科学家对可复用Python代码的实用管理方法(附链接)
- [HNOI2018]游戏[拓扑排序]
- 从《我要投资》,看麓谷基金广场的“孤峰优势”
- static关键字总结
- Linux RTC 驱动实验
- mysql check table_mysql check table
- OpenShift 4 - 安装部署 Ansible Automation Platform 4.x 控制台
- bug5-tensorflow.python.framework.errors_impl.UnknownError: Failed to get convolution algorithm
- dbeaver导出建表语句_「mysql基础」MySQL常用语句命令总结(文字版)
- MAC系统上,软件安装后的目录
- php fseek函数,C++_详解C语言中fseek函数和ftell函数的使用方法,fseek函数:int fseek(FILE * _ - phpStudy...
- ria技术_JavaFXpert RIA示例挑战截止日期已延长
- html的header背景图片,关于在HTML插入背景图片的问题
- X-Frame-Options响应头配置详解
- 记一次奇怪的网络问题
- 如何成为牛逼的程序员
- 最新校招笔试面试六十题
- word页眉页码目录
- 不修条地铁,都不好意思叫自己大城市(附地铁发展图)
- harbor仓库部署
热门文章
- Druid连接池链接mysql错误提示:create connection SQLException, url: jdbc:mysql://127.0.0.1:3306/bank, errorCode
- linux下打包deb文件,制作deb包的三种方法
- java生成sm4算法的对称密钥_技术分享丨这是一篇简单的小科普——什么是对称加密算法?(下)...
- android 按下缩小效果松开恢复_22省份三季报:粤苏总量差距缩小,19省份实现正增长...
- abaqus python 读取文件_通过Python脚本从Abaqus中的excel文件导入幅度数据
- java利己线程_java利己线程 | 学步园
- 中的live_张杰两首歌曲连唱彰显LIVE实力 青春演说温暖人心
- 街篮服务器维修时间,全新花式技能系统 《街头篮球》春节前夕版本上线
- html5 游戏 算法,JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【圆形情况】...
- 群晖消息通知 推送服务器,群晖resync服务器