《C++ Templates中文版》——第1章 关于本书

第1章 关于本书

C++ Templates中文版
模板,作为C++中的一部分已经有了十几年之久(而且也以各种形式存在),但我们仍然会对它误解、误用甚至产生争论。同时,我们又发现模板可以作为一个工具,用来开发更加干净、更具效率、更加智能的软件。事实上,模板已经成为许多新的C++程序设计范例(paradigm)的基石。

然而,我们发现大部分关于C++模板的书籍和论文对模板理论和应用的介绍都是很肤浅的。即使是少数几本讨论各种模板设计技术的书籍,也未能准确地描述C++语言是如何支持这些模板技术的。于是,无论是C++的初级程序员还是高级程序员,都会发现模板总是令他们感到困惑,他们也期望能知道(涉及到模板的)代码为什么总是出乎意料地出错。

这种现象是我们编写这本书籍的主要原因。然而,即使同样是针对模板的话题,我们两人选择的落脚点又有所不同,写书的方式也带有差异:

David的目的是为了给读者提供一份关于C++模板的语言机制和应用模板所获得的高级编程技术的完整参考。他更多地注重准确性和完整性。
Nico的兴趣在于希望这本书可以帮助他自己和那些在日常中使用模板的程序员。这就意味着在介绍模板实用技术的时候,应该以一种很直观的方式来阐述这些内容。
就某种意义而言,你会发现我们是一对科学家—工程师组合:虽然面对的是同一个话题,但我们的着重点却有所不同(当然,肯定会有一些重叠)。

Addison-Wesley让我们两个人走到了一起,才有了这本(我们认为)带有详细参考的C++模板教程。该教程不仅介绍了模板的语言特性,更注重于阐述一些与实际应用相关的设计方法。也就是说,该书不仅是一本关于C++模板的语法和语义的详细参考,也是一份介绍广为人知(和少为人知)的模板用法和技术的概要。

时间: 2024-09-23 00:45:14

《C++ Templates中文版》——第1章 关于本书的相关文章

《C++ Templates中文版》——1.1 阅读本书所需具备的知识

1.1 阅读本书所需具备的知识 为了能够理解本书中的大部分知识,你应该熟悉C++:我们描述的是该语言的一个特性(即模板),而不是语言本身的基础知识.你应该熟悉类和继承的概念,并且能够使用诸如IOstream和容器等C++标准库组件来编写程序.另外,在有必要的时候我们还会谈到语言的一些复杂话题,即使这些话题和模板并没有直接的关联.所有的这些说明了这本书主要适合于C++的专家和中级程序员. 我们所采用的语言是1998年标准化的C++语言(见[Standard98]),以及C++标准委员会在它的首份技

《C++ Templates中文版》——第2章 函数模板

第2章 函数模板 C++ Templates中文版这一章介绍函数模板.函数模板是那些被参数化的函数,它们代表的是一个函数家族.

《C++ Templates中文版》导读

译者序 C++ Templates中文版C++真可谓是包罗万象.博大精深.每个在C++中沉迷多年的爱好者都难免有这样的感慨:使用C++多年过后,我们往往只能算是一个熟练的使用者,却从来不敢给自己冠上"精通C++"的头衔.难道"精通C++"永远都是不惭的大言?然而,在学习.使用和研究C++的过程中,我们总是期望能够向"精通"不断迈进,并领悟C++语言的精髓.我想,要做到这一点起码要注意三个方面:一要把握语言发展的脉搏:二要多应用标准技术:三要洞悉标

求大神解答一下-C++ primer plus 第6版 中文版 第16章复习题的一个问题

问题描述 C++ primer plus 第6版 中文版 第16章复习题的一个问题 奇葩的是课后居然没答案...... 求正规.严谨.简洁的标准答案! 程序清单16.15(在p708页):functor.cpp //functor.cpp--using a functor #include尖括号iostream尖括号 #include尖括号list尖括号 #include尖括号iterator尖括号 #include尖括号algorithm尖括号 template//functor class

《C++ Templates中文版》——1.2 本书的整体结构

1.2 本书的整体结构 我们的目的有两方面:一方面是为了给那些刚刚开始使用模板的程序员提供必要的信息,让他们可以从使用模板中受益:另一方面是为那些经验丰富的程序员介绍一些深入的知识,使他们可以走在模板应用的前列.为了实现这个目的,我们将整本书组织如下: 第1部分介绍了模板的基本概念,以教程的风格来介绍这些基本概念. 第2部分阐述了模板的语言细节,可以作为基于模板的构造的参考. 第3部分介绍了C++模板所支持的基本设计技术,覆盖的范围从微小的概念到复杂的用法:一些技术在别的书籍中都没有出现过. 第

《C++ Templates中文版》——1.3 如何阅读本书

1.3 如何阅读本书 如果你是一个希望学习或者温习模板概念的C++程序员,那么你应该仔细阅读第1部分--基础.即使你已经对模板非常熟悉,我们还是建议你大概浏览一下第1部分,这样有助于你了解我们所使用的风格和术语.这一部分还介绍了:当遇到包含模板的源代码时,你应该如何(逻辑地)组织这些源代码. 根据自己的学习方法,你既可以深入理解第2部分的许多细节,也可以直接阅读第3部分所介绍的实用编码技术(然后才回到第2部分阅读一些复杂的语言话题).如果你每天面对使用模板的压力,那么后一种阅读方法通常是相当有用

《Netty 实战》Netty In Action中文版 第2章——你的第一款Netty应用程序(一)

第2章 你的第一款Netty应用程序 本章主要内容 设置开发环境 编写Echo服务器和客户端 构建并测试应用程序 在本章中,我们将展示如何构建一个基于Netty的客户端和服务器.应用程序很简单:客户端将消息发送给服务器,而服务器再将消息回送给客户端.但是这个练习很重要,原因有两个. 首先,它会提供一个测试台,用于设置和验证你的开发工具和环境,如果你打算通过对本书的示例代码的练习来为自己将来的开发工作做准备,那么它将是必不可少的. 其次,你将获得关于Netty的一个关键方面的实践经验,即在前一章中

《Netty实战》Netty In Action中文版 第1章——Netty——异步和事件驱动(一)

<Netty实战>样章由人民邮电出版社授权并发编程网发布,本书的中文版已经由人民邮电出版社引进并出版. 京东预售链接(优先发货):<Netty实战>([美]诺曼·毛瑞尔(Norman Maurer),马文·艾伦·沃尔夫泰尔(Marvin Allen Wolfthal)) 第一部分 Netty的概念及体系结构 Netty是一款用于创建高性能网络应用程序的高级框架.在第一部分,我们将深入地探究它的能力,并且在3个主要的方面进行示例: 使用Netty构建应用程序,你不必是一名网络编程专家

《C++ Templates中文版》——2.1 初探函数模板

2.1 初探函数模板 函数模板提供了一种函数行为,该函数行为可以用多种不同的类型进行调用:也就是说,函数模板代表一个函数家族.它的表示(即外形)看起来和普通的函数很相似,唯一的区别就是有些函数元素是未确定的:这些元素将在使用时被参数化.为了阐明这些概念,让我们先来看一个简单的例子. 2.1.1 定义模板下面就是一个返回两个值中最大者的函数模板: //basics/max.hpp template <typename T> inline T const& max (T const&