出版社: 中国电力出版社
译者: 卓小涛
出版年: 2003年1月1日
页数: 220 页
定价: 35.00元
装帧: 平装
丛书: 深入C++系列
ISBN: 9787508314853
内容简介 · · · · · ·
本书详细地讨论了如何编写健壮高效的代码以及模块设计技术。本书采用了自问自答的语言风格,它讨论了实际程序设计中普遍存在的,又非常不易察觉的问题,并且进行了深刻的分析,提出了具有广泛意义的解决方案。本书值得每个想成为优秀c++程序员的人阅读。我相信,任何c++程序员都会在本书的阅读过程中有许多收获,甚至有一种醍醐灌顶,恍然大悟的收获和喜悦。
丛书信息
喜欢读"Exceptional C++中文版"的人也喜欢的电子书 · · · · · ·
喜欢读"Exceptional C++中文版"的人也喜欢 · · · · · ·
Exceptional C++中文版的书评 · · · · · · ( 全部 3 条 )

Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions

Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions

Exceptional C++
> 更多书评 3篇
-
mark (2013)
对象标识 自动转换 转换操作符 非显式的构造函数 对象生成期 Page189 const 不要声明 const 的按值传递的函数参数 const mutable Page196 类型转换 `const_cast `dynamic_cast `reinterpret_cast `static_cast bool `typedef ... bool `#define bool ... `enum bool ... `class bool ... 传递调用函数 Page206 控制流2011-05-21 21:15:54
-
mark (2013)
将编译期依存性减至最小。 #include <iosfwd> 前置声明 Page109 Pimpl 句柄/实体的一种特殊形式 Pimpl 习惯用法 编译器防火墙 Pimpl 只是一种用来隐藏类的私有成员的非透明指针。 Page119 Fast Pimpl static const size_t sizeofx; char x_[sizeofx]; assert new (&x_[0]) X reinterpret_cast<X*>(&x[0])->~X(); ::operator new() malloc() static void* operator new (size_t); static void operator ...2011-05-21 21:09:17
将编译期依存性减至最小。 #include <iosfwd> 前置声明 Page109 Pimpl 句柄/实体的一种特殊形式 Pimpl 习惯用法 编译器防火墙 Pimpl 只是一种用来隐藏类的私有成员的非透明指针。 Page119 Fast Pimpl static const size_t sizeofx; char x_[sizeofx]; assert new (&x_[0]) X reinterpret_cast<X*>(&x[0])->~X(); ::operator new() malloc() static void* operator new (size_t); static void operator delete (void*); Page127 名字查找和接口规则 Koenig 查找规则 接口规则 namespace { } class { }; Page143 名字隐藏 d.Base::g(i); using B::g;
回应 2011-05-21 21:09:17
-
mark (2013)
第一章 泛型程序设计与 C++ 标准库 Page1 异常安全性 迭代器 临时对象 迭代器: ·有效值 ·有效生存期 ·有效范围 ·非法的内置类型操作 Page4 不区分大小的字符串 stricmp() typedef basic_string<char> string; struct ci_char_traits : public char_traits<char> { static bool eq(char c1, char c2) { return toupper(c1) == toupper(c2); } static bool lt(char c1, char c2) { return toupper(c1) < toup...2011-04-21 13:30:28
第一章 泛型程序设计与 C++ 标准库 Page1 异常安全性 迭代器 临时对象 迭代器: ·有效值 ·有效生存期 ·有效范围 ·非法的内置类型操作 Page4 不区分大小的字符串 stricmp() typedef basic_string<char> string; struct ci_char_traits : public char_traits<char> { static bool eq(char c1, char c2) { return toupper(c1) == toupper(c2); } static bool lt(char c1, char c2) { return toupper(c1) < toupper(c2); } static int compare(const char* s1, const char* s2, size_t n) { return memicmp(s1, s2, n); } static const char* find(const char* s, int n, char a) { while (n-- > 0 && toupper(*s) != toupper(a)) { ++s; } return n > 0 ? s : 0; } }; typedef base_string<char, ci_char_traits> ci_string; Page8 不区分大小写的字符串 LSP Liskov 替换规则 Page11 最大可重用的泛型容器 template <typename T, size_t size> class fixed_vector { }; Page12 最大可重用的泛型容器 operator= 强类型安全性 Page19 临时对象 const& 常量引用 Page24 使用标准库(或称再谈临时对象) find sort
回应 2011-04-21 13:30:28 -
mark (2013)
类的设计与继承 T& T::operator +=(const T& other) { // ... return *this; } const T operator +(const T& a, const T& b) { T temp(a); temp += b; return temp; } 一个设计和风格良好的类 class Complex { public: explicit Complex(double real, double imaginary = 0) : real_(real), imaginary_(imaginary) { } Complex& operator +=(const Complex& other) { real_ += other.real_; imaginary_...2011-05-21 11:50:59
类的设计与继承 T& T::operator +=(const T& other) { // ... return *this; } const T operator +(const T& a, const T& b) { T temp(a); temp += b; return temp; } 一个设计和风格良好的类 class Complex { public: explicit Complex(double real, double imaginary = 0) : real_(real), imaginary_(imaginary) { } Complex& operator +=(const Complex& other) { real_ += other.real_; imaginary_ += other.imagniary_; return *this; } Complex& operator ++() { ++real_; return *this; } const Complex operator ++(int) { Complex temp(*this); ++*this; return temp; } ostream& print(ostream& os) const { return os << "(" << real_ << ", " << imaginary_ << ")"; } private: double real_, imaginary_; }; const Complex operator +(const Complex& lhs, const Complex& rhs) { Complex ret(lhs); ret += rhs; return ret; } ostream& operator <<(ostream& os, const Complex& c) { return c.print(os); }
回应 2011-05-21 11:50:59
-
mark (2013)
对象标识 自动转换 转换操作符 非显式的构造函数 对象生成期 Page189 const 不要声明 const 的按值传递的函数参数 const mutable Page196 类型转换 `const_cast `dynamic_cast `reinterpret_cast `static_cast bool `typedef ... bool `#define bool ... `enum bool ... `class bool ... 传递调用函数 Page206 控制流2011-05-21 21:15:54
-
mark (2013)
将编译期依存性减至最小。 #include <iosfwd> 前置声明 Page109 Pimpl 句柄/实体的一种特殊形式 Pimpl 习惯用法 编译器防火墙 Pimpl 只是一种用来隐藏类的私有成员的非透明指针。 Page119 Fast Pimpl static const size_t sizeofx; char x_[sizeofx]; assert new (&x_[0]) X reinterpret_cast<X*>(&x[0])->~X(); ::operator new() malloc() static void* operator new (size_t); static void operator ...2011-05-21 21:09:17
将编译期依存性减至最小。 #include <iosfwd> 前置声明 Page109 Pimpl 句柄/实体的一种特殊形式 Pimpl 习惯用法 编译器防火墙 Pimpl 只是一种用来隐藏类的私有成员的非透明指针。 Page119 Fast Pimpl static const size_t sizeofx; char x_[sizeofx]; assert new (&x_[0]) X reinterpret_cast<X*>(&x[0])->~X(); ::operator new() malloc() static void* operator new (size_t); static void operator delete (void*); Page127 名字查找和接口规则 Koenig 查找规则 接口规则 namespace { } class { }; Page143 名字隐藏 d.Base::g(i); using B::g;
回应 2011-05-21 21:09:17
这本书的其他版本 · · · · · · ( 全部5 )
-
Addison-Wesley (1999)8.6分 113人读过
-
电子工业出版社 (2012)9.1分 56人读过
-
机械工业出版社 (2007)9.5分 30人读过
-
机械工业出版社 (1999)7.4分 16人读过
在哪儿借这本书 · · · · · ·
以下书单推荐 · · · · · · ( 全部 )
- C++书单(转载) (海若)
- 学习C++语言 (五点半)
- 游戏程序员的书单[语言类] (诡辩)
- rIPPER 的IT书架 (rIPPER色影师)
- C++语言反人类的明证 (rIPPER色影师)
谁读这本书?
二手市场
订阅关于Exceptional C++中文版的评论:
feed: rss 2.0
0 有用 [已注销] 2013-03-03 14:52:18
非常好的总结,大部分已看完
0 有用 ① 2007-01-24 11:25:37
好,值得收藏的书
0 有用 interma 2005-11-20 12:32:51
类似More Effective C++的Tips小册子,比适合中高级读者阅读,难度比MEC简单一些。
0 有用 飘飘白云 2013-06-27 09:29:41
如果读了 E 和 ME,就没必要读这本书了。GotW式到表现形式导致信息量不多,三星足矣。
0 有用 Issac 2010-09-24 11:34:11
推荐原著,翻译得欠佳
0 有用 飘飘白云 2013-06-27 09:29:41
如果读了 E 和 ME,就没必要读这本书了。GotW式到表现形式导致信息量不多,三星足矣。
0 有用 [已注销] 2013-03-03 14:52:18
非常好的总结,大部分已看完
0 有用 lxhscx 2013-01-27 14:21:50
读过 Effective C++/More Effective C++后,仍能震撼你的作品。
0 有用 JeffChen 2012-11-08 10:23:39
读完了,有时间还是必读的,尤其是使用STL和关于Impl
0 有用 zminds 2012-05-05 00:43:10
可以说是对C++的高级技巧总结的最好的一套小册子了 很适合有一段开发经验后看,和之前自己遇到的问题总结类比,会有一种醍醐灌顶的大彻大悟