`
kmplayer
  • 浏览: 517766 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

条款49:尽量让自己熟悉C++标准库

阅读更多
1,标准库的每一样东西几乎都在namespace std中,然而世界上有无可计数的C++程序代码依赖那些已经使用多年的“准“标准程序库,例如声明于<iostream.h>,<limits.h>等文件中的功能。

2,解决方法,设计新的头文件名,给披上std外衣的各个组件使用。
(1)将原有的c++头文件中的.h扩展拿掉,于是<iostream.h>变为<iostream>。
(2)C头文件采用相同办法,并在最前面加上一个字母c。于是<stdio.h>变为<cstdio>

3,关于标准程序库,必须知道的事情:几乎其中每一样东西都是template。
如:cin的型别:basic_istream<char>  string的型别:basic_string<char>
一份完整的声明:
namespace std{
template<class charT> struct char_traits;
template<class T> class allocator;
template<class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> > class basic_string;
typedef basic_string<char> string;
}

4,C++标准库的主要组件:
(1)C标准函数库
(2)iostreams
(3)strings
(4)Containers
(5)Algorithms
(6)国际化支持。
(7)数值处理
(8)诊断功能。

5,STL是标准程序库中最革命的部分。
原因:STL并不真正是个软件,而是一组公约。STL组件都是遵循这些公约下的产物。
分享到:
评论

相关推荐

    Effective.C++.中文第二版.50条款doc文档.chm

    Effective.C++.中文第二版,大小 1 Mb,chm 格式,作者:Scott Meyers,翻译:Lostmouse。 内容预览: 第一章 从C转向C++ 条款1:尽量用const和inline而不用#define ...条款49: 熟悉标准库 条款50: 提高对C++的认识

    高效C++:从C到C++

    **条款4:尽量使用C++风格的注释** - **背景**:C++支持两种注释风格:C风格的`/* ... */`和C++风格的`//`。 - **原因**:C++风格的注释更容易阅读,不会像C风格那样容易嵌套不当。此外,C++风格的注释只允许单行...

    Effective C++(第三版)

    条款54:让自己熟悉包括tr1在内的标准程序库 familiarize yourself with the standard library, including tr1. 条款55:让自己熟悉boost familiarize yourself with boost. a 本书之外 b 新旧版条款对映 索引

    Effective C++学习笔记

    C++标准库中的`std::pair`和`std::tuple`等类型提供了默认初始化。 5. **了解C++默默编译并调用哪些函数**:C++会自动创建默认构造函数、拷贝构造函数、赋值运算符和析构函数。理解这些隐式生成的函数,能更好地...

    Effetive STL中文版

    - **书籍定位**:本书是由Scott Meyers编写,旨在帮助C++程序员更有效地使用STL(Standard Template Library,标准模板库)。作者认为,对于学习C++的人来说,可以分为看过Effective系列和没有看过的人两大类,说明...

    c#学习笔记.txt

    本文假定你具备一切学习此语言所需的知识,没有也不要紧,我会在文中尽量列出相关的link,鉴于互联网瞬息万变的特点,若某一链接不可用,请自行至Google查询。 如前所述,我是一个狮子座男人,一度我认为学习Java会...

Global site tag (gtag.js) - Google Analytics