C++标准程序库.pdf


-
内容简介 《C++标准程序库:自修教程与参考手册》包含最新资料的完整书籍,反映出被ANSI/ISO C++语言标准规格书纳入的C++标准程序库的最新组成。更明确地说,《C++标准程序库:自修教程与参考手册》将焦点放在标准模板库身上,检验其中的容器、迭代器、仿函数和算法。你还可以找到特殊容、字串、数值类别、国际化议题、IOStream。每一个元素都有深刻的呈现,包括其介绍、设计、运用实例、细部解说、陷阱、意想不到的危险,以及相关类别和函数的精确樯记式和定义式。 编辑本段 媒体评论 书评 C++标准程序库提供了一组通用类别(classes)和界面(interfaes),可大幅扩充C++核心语言
The C++ Standard Library C++ Standard library, The: A Tutorial and reference Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book and Addison Wesley Longman Inc. was aware of a trademark claim the designations have been printed in initial caps or all caps. The authors and publisher have taken care in the preparation of this book, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions No liability is assumed for incidental or consequential damages in connection with or arising out of the use of the information or programs contained herein The publisher offers discounts on this book when ordered in quantity for special sales. For more information, please contact AWL Direct sales Addison Wesley Longman, Inc One Jacob Way Reading Massachusetts o1867 (781)944-3700 VisitAwontheweB:www.awl.com/cseng/ Library of Congress Cataloging-in-Publication Data Josuttis. nicolai m The C++ standard library: a tutorial and reference /Nicolai M. Josuttis Includes bibliographical references and index 1. C++(Computer program language)I Title QA76.73C153J691999 005.133-dc219924977 CIP CopyrightC 1999 by Addison Wesley Longman, Inc All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form, or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior consent of the publisher. Printed in the United States of America Published simultaneously in Canada 123456789CRW-0302010099 First printing, July 1999 dyne-book The C++ Standard Library Table of contents Preface Acknowledgments About this book 1.1 Why this book 1.2 What You Should Know Before reading this book 1.3 Style and structure of the book 1.4 How to read this book 1.5 State of the art 1.6 Example code and Additional Information 1.7 Feedback 2. Introduction to C++ and the standard library 2.1 History 2.2 New Language Features 2.3 Complexity and the big-O Notation 3. General Concepts 3. 1 Namespace std 3.2 Header files 3.3 Error and Exception Handling 3. 4 Allocators 4, Utilitⅰes 4.1 Pairs 4. 1. 1 Convenience Function make pair( 4.1.2 EXamples of Pair Usage 4.2 Class auto ptr 4.3 Numeric Limits 4. 4 Auxiliary Functions 4.5 Supplementary Comparison Operators 4.6 Header files <cstddef> and <cstdlib> 5.The Standard Template Library 5.1 STL Components 5.2 Containers 5.3 iterators 5.4 Algorithm 5.5 Iterator Adapters 5.6 Manipulating algorithms 5.7 User-Defined generic functions 5.8 Functions as Algorithm Arguments 5.9 Function Objects 5.10 Container elements 5.11 Errors and Exceptions Inside the STL 5.12 Extending the stL 6. STL Containers 6.1 Common Container abilities and Operations 6.2 Vectors 3 Deque yne-bO The C++ Standard Library 6. 4 Lists 6.5 Sets and multisets 6.6 Maps and multimaps 6.7 Other sTL Containers 6.8 Implementing Reference Semantics 6.9 When to Use which Container 6.10 Container Types and members in deta 7. STL Iterators 7. 1 Header Files for Iterators 7.2 Iterator Categories 7.3 Auxiliary Iterator Functions 7. 4 Iterator Adapters 7.5 Iterator traits 8. STL Function Obiects 8. 1 The Concept of Function objects 8.2 Predefined Function Obiects 8.3 Supplementary Composing Function Obiects 9. STL Algorithms 9.1 Algorithm Header Files 9.2 Algorithm Overview 9.3 Auxiliary Functions 9.4 The for each( Algorith 9.5 Nonmodifying algorithms 9.6 Modifying algorithms 9.7 Removing Algorithms 9.8 Mutating Algorithms 9.9 Sorting Algorithms 9.10 Sorted Range algorithms 9.11 Numeric Algorithms 10.Special Containers 10.1 Stacks 10.2 Queues 10.3 Priority Queues 10. 4 Bitsets 11. Strings 11. 1 Motivation 11.2 Description of the string classes 11.3 String Class in Detail 12. Numerics 12.1 Complex Numbers 12.2 Valarray 12.3 Global numeric functions 13.Input/Output Using Stream Classes 13. Input/Output Using stream Classes 13.1 Common Background of I/o Streams 13.2 Fundamental stream Classes and obiects dyne-book The C++ Standard Library 13.3 Standard Stream Operators < and>> 13.4 State of streams 13.5 Standard input/output Functions 3.6 Manipulators 13.7 Formatting 13. 8 Internationalization 13.9 File access 13.10 Connecting Input and Output Streams 13.11 Stream Classes for Strings 13.12 Input/output Operators for User-Defined Types 3.13 The stream buffer Classes 13,14 Performance issues 14. Internationalization 14.1 Different Character Encodings 14.2 The Concept of Locales 14.3 Locales in detail 14. 4 Facets in detail 15. Allocators 15.1 Using Allocators as an Application Programmer 15.2 Using Allocators as a Library programmer 15.3 The default allocator 15.4A User-Defined allocator 15.5 Allocators in detail 15.6 Utilities for Uninitialized memory in detail Internet resources Where You can get the standard Internet Addresses/URls Bibliography dyne-book The C++ Standard Library Preface In the beginning, I only planned to write a small German book(400 pages or so)about the C++ standard library. That was in 1993. Now, in 1999 you see the result- an English book with more than 800 pages of facts, figures, and examples. My goal is to describe the C++ standard library so that all (or almost all) your programming questions are answered before you think of the question Note, however, that this is not a complete description of all aspects of the C++ standard library. Instead, I present the most important topics necessary for learning and programming in C++ by using its standard library Each topic is described based on the general concepts, this discussion then leads to the specific details needed to support every-day programming tasks. Specific code examples are provided to help you understand the concepts and the details That's it-in a nutshell. I hope you get as much pleasure from reading this book as I did from writing it. Enjoy dyne-book The C++ Standard Library Acknowledgments This book presents ideas, concepts, solutions, and examples from many sources. In a way it does not seem fair that my name is the only name on the cover. Thus, I'd like to thank all the people and companies who helped and supported me during the past few years First, I'd like to thank dietmar Kuhl. Dietmar is an expert on C++, especially on input/output streams and internationalization(he implemented an l/o stream library just for fun ) He not onl translated major parts of this book from German to English, he also wrote sections of this book using his expertise. In addition, he provided me with invaluable feedback over the years Second, I'd like to thank all the reviewers and everyone else who gave me their opinion. These people endow the book with a quality it would never have had without their input (Because the list is extensive, please fogive me for any oversight. The reviewers for the English version of this book included Chuck Allison, Greg Comeau, James A. Crotinger, Gabriel Dos Reis, Alan Ezust Nathan Meyers, Werner Mossner, Todd Veldhuizen, Chichiang Wan, Judy Ward, and Thomas Wikehult. the german reviewers included Ralf boecker, Dirk herrmann Dietmar Kuhl. Edda Lorke, Herbert Scheubner, Dominik Strasser, and Martin Weitzel. Additional input was provided by Matt Austern, Valentin Bonnard, Greg Colvin, Beman Dawes, Bill Gibbons, Lois Goldthwaite Andrew Koenig, Steve Rumbsby, Bjarne Stroustrup, and David Vandevoorde Special thanks to Dave Abrahams, Janet Cocker, Catherine Ohala, and Maureen Willard who reviewed and edited the whole book very carefully. Their feedback was an incredible contribution to the quality of this book A special thanks goes to my " personal living dictionary"-Herb Sutter- the author of the famous"Guru of the Week"(a regular series of C++ programming problems that is published on the comp. std. C++, moderated Internet newsgroup) Id also like to thank all the people and companies who gave me the opportunity to test my examples on different platforms with different compilers. Many thanks to Steve Adamczyk, Mike Anderson, and John Spicer from EDG for their great compiler and their support. It was a big help during the standardization process and the writing of this book. Many thanks to P.J. Plauger and Dinkumware, Ltd, for their early standard-conforming implementation of the C++ standard library Many thanks to Andreas Hommel and Metrowerks for an evaluative version of their Code Warrior Programming Environment. Many thanks to all the developers of the free GNU and egcs compilers. Many thanks to microsoft for an evaluative version of visual c+t. many thanks to Roland Hartinger from Siemens Nixdorf Informations Systems AG for a test version of their C++ compiler. Many thanks to Topjects GmbH for an evaluative version of the ObjectSpace library implementation Catherine Ohala, Marty Rabinowitz, Susanne Spitzer, and Maureen Willard It wasfugo Many thanks to everyone from Addison Wesley Longman who worked with me. Among others this includes Janet Cocker, Mike Hendrickson, Debbie Lafferty, Marina Lang, Chanda Leary, In addition, Id like to thank the people at bredEX Gmbh and all the people in the C++ community, particularly those involved with the standardization process, for their support and patience(sometimes I ask really silly questions Last but not least, many thanks and kisses for my family: Ulli, Lucas, Anica, and Frederic definitely did not have enough time for them due to the writing of this book Have fun and be human! dyne-book The C++ Standard Library Chapter 1. About this Book 1.1 Why this book Soon after its introduction, C++ became a de facto standard in object-oriented programming This led to the goal of standardization. Only by having a standard, could programs be written that would run on different platforms - from PCs to mainframes. Furthermore, a standard library would enable programmers to use general components and a higher level of abstraction without losing portability, rather than having to develop all code from scratch The standardization process was started in 1989 by an international ANSI/Iso committee developed the standard based on Bjarne Stroustrup,'s books The C++ Programming Language and The Annotated C++ Reference Manual. After the standard was completed in 1997, several formal motions by different countries made it an international iso and ansi standard in 1998 The standardization process included the development of a C++ standard library. The library extends the core language to provide some general components. By using C++'s ability to program new abstract and generic types, the library provides a set of common classes and interfaces. This gives programmers a higher level of abstraction. The library provides the ability to use String types Different data structures(such as dynamic arrays, linked lists, and binary trees Different algorithms(such as different sorting algorithms) Numeric classes Input/output (1/o)classes Classes for internationalization support All of these are supported by a fairly simple programming interface. These components are very important for many programs. These days, data processing often means inputting, computing, processing: and outputting large amounts of data, which are often strings The library is not self-explanatory. To use these components and to benefit from their power, you need a good introduction that explains the concepts and the important details instead of simply isting the classes and their functions. This book is written exactly for that purpose. First, it introduces the library and all of its components from a conceptional point of view. Next describes the details needed for practical programming. Examples are included to demonstrate the exact usage of the components. Thus, this book is a detailed introduction to the C++ library for both the beginner and the practical programmer. Armed with the data provided herein, you should be able to take full advantage of the C++ standard library Caveat: dont promise that everything described is easy and self-explanatory. The library provides a lot of flexibility, but flexibility for nontrivial purposes has a price. Beware that the library has traps and pitfalls, which I point out when we encounter them and suggest ways of avoiding them 1.2 What You Should Know Before Reading this Book To get the most from this book you should already know C++. (The book describes the standard components of C++, but not the language itself. )You should be familiar with the concepts of classes, inheritance, templates, and exception handling. However, you dont have to know all of the minor details about the language. The important details are described in the book( the minor dyne-book The C++ Standard Library details about the language are more important for people who want to implement the library rather than use it). Note that the language has changed during the standardization process, so your knowledge might not be up to date. section 2.2, provides a brief overview and introduction of the latest language features that are important for using the library. You should read this section if you are not sure whether you know all the new features of C++(such as the keyword typename and the concept of namespaces) 1.3 Style and Structure of the Book The C++ standard library provides different components that are somewhat but not totally independent of each other, so there is no easy way to describe each part without mentioning others. I considered several different approaches for presenting the contents of this book. One was on the order of the C++ standard. However, this is not the best way to explain the components of the C++ standard library from scratch another was to start with an overview of all components followed by chapters that provided more details. Alternatively, I could have sorted the components, trying to find an order that had a minimum of cross- references to other sections My solution was to use a mixture of all three approaches. I start with a brief introduction of the general concepts and the utilities that are used by the library. Then, I describe all the components, each in one or more chapters. The first component is the standard template library (STL). There is no doubt that the STL is the most powerful, most complex, and most exciting part of the library. Its design influences other components heavily. Then I describe the more self- explanatory components, such as special containers, strings, and numeric classes. The next component discussed is one you probably know and use already: the IOStream library. It is followed by a discussion of internationalization, which had some influence on the ioStream library Each component description begins with the component's purpose, design, and some examples Next, a detailed description follows that begins with different ways to use the component, as well as any traps and pitfalls associated with it. The description usually ends with a reference section, in which you can find the exact signature and definition of a component's classes and its functions The following is a description of the books contents. The first four chapters introduce this book and the C++ standard library in general Chapter 1: About this Book This chapter(which you are reading right now)introduces the book's subject and describes its contents Chapter 2: Introduction to C++ and the Standard library This chapter provides a brief overview of the history of the C++ standard library and the context of its standardization It also contains some general hints regarding the technical background for this book and the library such as new language features and the concept OT complexity Chapter 3: General Concepts This chapter describes the fundamental concepts of the library that you need to understand to work with all the components. In particular, it introduces the namespace std, the format of header files, and the general support of error and exception handling Chapter 4: Utilities dyne-book

-
2015-07-21
-
2015-01-18
-
2015-01-05
-
2014-12-16
-
2014-11-10
-
2014-10-13
-
2014-08-21
-
2014-07-26
-
2014-07-19
-
2014-07-15
16.35MB
C+++标准程序库+简体中文版(完整版) pdf
2010-02-21C+++标准程序库 简体中文版.。。。。。。
21.29MB
C++ 标准程序库(侯捷译).pdf
2017-10-14扫描版,清晰度还不错,可以作为工具书 这本包含最新资料的完整书籍,反映出被ANSI/ISO C++语言标准规格书纳入的C++标准程序库的最新组成。更明确地说,这本书将焦点放在标准模板库身上,检验其中的
c++标准程序库-中文版下载_course
2020-03-05c++标准程序库包含了大部分c++头文件,可以开发大型程序所有的游戏 相关下载链接://download.csdn.net/download/zxbcollegestu/1406784?utm_sou
3.80MB
C++标准程序库
2019-02-19c++标准库高清版 pdf,侯捷译, c++程序员必看
1.41MB
C++ 库函数大全手册完整版
2019-01-12C++ 库函数大全手册完整版,而且是chm格式带索引、搜索,用着非常方便。这本手册的内容涉及C++ 核心库函数、STL函数、C函数库、IOstream操作库、STL Containers、String
C++高级参考手册 核心和最常用的类库及函数库下载_course
2019-06-10本书是C++语言参考手册,按字母顺序介绍了C++语言的核心和最常用的类库及函数库,内容涵盖了C++的关键字、函数、运算符、类、概念和技术细节。本书解释细致易懂、范例程序简短明了。初学者和有经验的C++
1.47MB
【c++官网】C++标准库函数参考手册
2017-04-23【c++官网】C++标准库函数参考手册
121KB
C/C++库函数参考手册(中文版)
2013-06-18学长给的,在此顺便送给急需用的人。 预处理命令 操作符优先级 转义字符 ASCII码表 基本数据类型 关键字 标准 C 库: Standard C I/O Standard C String & Ch
121KB
C++标准函数库(中文的c++标准函数库手册)
2009-04-13中文的c++标准函数库手册,用于查询c++函数相关资料
121KB
c++标准库函数速查手册
2014-10-06帮助速查c+有关库函数,养成自学好习惯。
1.41MB
C++标准库函数(STL)参考手册
2009-08-12C++ 标准库函数(STL)的参考手册。 chm格式,虽然是英文,但是感觉很不错,比大家常看到的c/c++参考中的STL部分多出了算法那一块的函数,还有其他许多。大家自己看吧!!推荐,我找了一晚上找到
c/c++到底有没有官方的库函数手册啊_course
2016-04-25由于本人比较喜欢看官方的原始文档,应为只有造出这样东西的团队才是最了解这个东西的,学习java比较长时间了,java官方提供了很详细的参考资料比如 The Java Language Specific
c++标准模版库:自学教和和参考手册下载_course
2020-03-23候捷翻译的。。 写stl的使用。。 自学stl必备教材 相关下载链接://download.csdn.net/download/lt1234/1752269?utm_source=bbsseo
C/C++ 标准库函数 (中文版)下载_course
2020-08-01C/C++ 标准库函数手册。 包含大部分常用的标准库函数、标准模版库和关键字等描述。 相关下载链接://download.csdn.net/download/u013346284/7294823?ut
求C++标准库函数查询手册......._course
2006-07-09谁有C++标准库函数查询手册的下载地址???要求是已编译成html形式的。
21.31MB
C++标准程序库最新版+简体中文版
2017-06-26C++标准程序库最新版+简体中文版
16.55MB
C++标准程序库(pdf及源代码)
2015-01-19该书涵盖了C++标准库的全部内容,在此基础上又对所有的组件进行了细致的、立体式的讲解。所谓立体式讲解,就是对于一个具体组件,作者首先从概念上讲解其道理,然后通过漂亮的范例说明其用法,申明其要点,最后再
3.81MB
c++标准程序库.pdf
2008-09-29C++标准程序库,欢迎大家来下载,Nicolai M.Josuttis著 侯捷/孟岩合译
哪里有《C++ 标准程序库》一书电子版的下载_course
2003-02-04如提

-
领英
绑定领英第三方账户获取 -
GitHub
绑定GitHub第三方账户获取 -
脉脉勋章
绑定脉脉第三方账户获得 -
签到新秀
累计签到获取,不积跬步,无以至千里,继续坚持! -
分享王者
成功上传51个资源即可获取
-
博客
第十二届蓝桥杯软件类模拟赛python程序设计 第二期(5)字母间距
第十二届蓝桥杯软件类模拟赛python程序设计 第二期(5)字母间距
-
下载
preflight-2.0.13.jar
preflight-2.0.13.jar
-
博客
第十二届蓝桥杯软件类模拟赛python程序设计 第二期(4)满足条件的序列
第十二届蓝桥杯软件类模拟赛python程序设计 第二期(4)满足条件的序列
-
学院
android笔试面试和实战课程
android笔试面试和实战课程
-
学院
WPF上位机数据采集与监控系统零基础实战
WPF上位机数据采集与监控系统零基础实战
-
下载
对比分析多种化学计量学方法在激光诱导击穿光谱土壤元素定量分析中的应用
对比分析多种化学计量学方法在激光诱导击穿光谱土壤元素定量分析中的应用
-
博客
validate如何使用
validate如何使用
-
下载
大口径光学元件功率谱密度的拼接干涉检测
大口径光学元件功率谱密度的拼接干涉检测
-
博客
企业站推广:100种实用的推广方法(十)
企业站推广:100种实用的推广方法(十)
-
学院
Excel高级图表技巧
Excel高级图表技巧
-
学院
SQL Server 2016 高可用灾备技术合集
SQL Server 2016 高可用灾备技术合集
-
博客
哈哈哈
哈哈哈
-
下载
基于卡方检验和SVM的用户搜索画像技术研究
基于卡方检验和SVM的用户搜索画像技术研究
-
博客
Database Management Systems(数据库系统原理总结)- 第二章
Database Management Systems(数据库系统原理总结)- 第二章
-
下载
InstallAnywhere2009
InstallAnywhere2009
-
下载
基于CAN总线的数据可靠性传输
基于CAN总线的数据可靠性传输
-
下载
上海超强超短激光实验装置
上海超强超短激光实验装置
-
下载
pdfbox-debugger-2.0.13.jar
pdfbox-debugger-2.0.13.jar
-
学院
转行做IT-第6章 IDEA、方法
转行做IT-第6章 IDEA、方法
-
博客
企业站推广:100种实用的推广方法(一)
企业站推广:100种实用的推广方法(一)
-
学院
微信支付2021系列之付款码支付一学就会java版
微信支付2021系列之付款码支付一学就会java版
-
学院
转行做IT-第2章 HTML入门及高级应用
转行做IT-第2章 HTML入门及高级应用
-
下载
矿井下多波长无线光中继应急通信系统设计
矿井下多波长无线光中继应急通信系统设计
-
学院
量化高频交易系统tick数据采集
量化高频交易系统tick数据采集
-
下载
基于吉阳光电CAN卡盒二次开发
基于吉阳光电CAN卡盒二次开发
-
下载
通信工程专业综合实验_循环码实验(附代码+实验报告)_北京交通大学
通信工程专业综合实验_循环码实验(附代码+实验报告)_北京交通大学
-
博客
【牛客网】ASCII码
【牛客网】ASCII码
-
博客
立体显示与BCN双稳态手性向列相
立体显示与BCN双稳态手性向列相
-
博客
Linux系统中的用户管理和权力下放
Linux系统中的用户管理和权力下放
-
下载
kernel-lt-4.4.190.el7.elrepo.x86_64.zip
kernel-lt-4.4.190.el7.elrepo.x86_64.zip