C++工程实践经验谈 以工程实例来谈C++ 中文 PDF清晰版

  • 书籍大小:890KB
  • 书籍语言:简体中文
  • 书籍类型:国产软件
  • 书籍授权:免费软件
  • 书籍类别:C/C++
  • 应用平台:PDF
  • 更新时间:2012-07-14
  • 购买链接:
  • 网友评分:
360通过 腾讯通过 金山通过

情介绍

C++工程实践经验谈
内容一览
1 慎用匿名namespace . 2
2 不要重载全局 ::operator new() 6
3 采用有利于版本管理的代码格式 . 13
4 二进制兼容性 . . 23
5 避免使用虚函数作为库的接口 . . 28
6 动态库的接口的推荐做法 . . 36
7 以 boost::function和boost:bind 取代虚函数 . . 40
8 带符号整数的除法与余数 . . 47
9 用异或来交换变量是错误的 55
10 在单元测试中 mock 系统调用 . . 62
11 iostream 的用途与局限 67
12 值语义与数据抽象 96
13 再探 std::string . 114
14 用 STL algorithm 秒杀几道算法面试题 122
1 慎用匿名namespace
匿名namespace (anonymous namespace或称unnamed namespace)是C++语
言的一项非常有用的功能,其主要目的是让该 namespace 中的成员(变量或函
数)具有独一无二的全局名称,避免名字碰撞 (name collisions)。一般在编写 .cpp
文件时,如果需要写一些小的 helper 函数,我们常常会放到匿名 namespace 里。
muduo 0.1.7 中的 muduo/base/Date.cc 和 muduo/base/Thread.cc 等处就用到了匿名
namespace。
我最近在工作中遇到并重新思考了这一问题,发现匿名 namespace 并不是多多益善。
1.1 C 语言的static 关键字的两种用法
C 语言的 static关键字有两种用途:
1. 用于函数内部修饰变量,即函数内的静态变量。这种变量的生存期长于该函数,
使得函数具有一定的“状态”。使用静态变量的函数一般是不可重入的,也不是
线程安全的,比如strtok(3)。
2. 用在文件级别(函数体之外),修饰变量或函数,表示该变量或函数只在本文件
可见,其他文件看不到也访问不到该变量或函数。专业的说法叫“具有internal
linkage”(简言之:不暴露给别的translation unit)。
C 语言的这两种用法很明确,一般也不容易混淆。

载地址

下载错误?【投诉报错】

C++工程实践经验谈 以工程实例来谈C++ 中文 PDF清晰版

      气书籍

      载声明

      ☉ 解压密码:www.jb51.net 就是本站主域名,希望大家看清楚,[ 分享码的获取方法 ]可以参考这篇文章
      ☉ 推荐使用 [ 迅雷 ] 下载,使用 [ WinRAR v5 ] 以上版本解压本站软件。
      ☉ 如果这个软件总是不能下载的请在评论中留言,我们会尽快修复,谢谢!
      ☉ 下载本站资源,如果服务器暂不能下载请过一段时间重试!或者多试试几个下载地址
      ☉ 如果遇到什么问题,请评论留言,我们定会解决问题,谢谢大家支持!
      ☉ 本站提供的一些商业软件是供学习研究之用,如用于商业用途,请购买正版。
      ☉ 本站提供的C++工程实践经验谈 以工程实例来谈C++ 中文 PDF清晰版资源来源互联网,版权归该下载资源的合法拥有者所有。