2025-11-13 - San Diego de Alcalá y otros... |      623029155    info@evainformatica.es  Contacta

C++ Standard Library: A Tutorial and Reference

https://evainformatica.es/biblioteca_virtual/manuales/img/cplus_plus_standard_library_tutorial_and_reference.png

Formato: chm

Tamaño: 3.3 MB

idioma: en

Descargar

Visto: 78 veces

This book is a mix of introductory user's guide and structured reference manual regarding the C++ standard library.

C++ Standard Library: A Tutorial and Reference

Chapter 1. About this Book
 Section 1.1 Why this Book
 Section 1.2 What You Should Know Before Reading this Book
 Section 1.3 Style and Structure of the Book
 Section 1.4 How to Read this Book
 Section 1.5 State of the Art
 Section 1.6 Example Code and Additional Information
 Section 1.7 Feedback

Chapter 2. Introduction to C++ and the Standard Library
 Section 2.1 History
 Section 2.2 New Language Features
 Section 2.3 Complexity and the Big-O Notation

Chapter 3. General Concepts
 Section 3.1 Namespace
 Section 3.2 Header Files
 Section 3.3 Error and Exception Handling
 Section 3.4 Allocators

Chapter 4. Utilities
 Section 4.1 Pairs
  Section 4.1.1 Convenience Function
  Section 4.1.2 Examples of Pair Usage
 Section 4.2 Class
 Section 4.3 Numeric Limits
 Section 4.4 Auxiliary Functions
 Section 4.5 Supplementary Comparison Operators
 Section 4.6 Header Files

Chapter 5. The Standard Template Library
 Section 5.1 STL Components
 Section 5.2 Containers
 Section 5.3 Iterators
 Section 5.4 Algorithms
 Section 5.5 Iterator Adapters
 Section 5.6 Manipulating Algorithms
 Section 5.7 User-Defined Generic Functions
 Section 5.8 Functions as Algorithm Arguments
 Section 5.9 Function Objects
 Section 5.10 Container Elements
 Section 5.11 Errors and Exceptions Inside the STL
 Section 5.12 Extending the STL

Chapter 6. STL Containers
 Section 6.1 Common Container Abilities and Operations
 Section 6.2 Vectors
 Section 6.3 Deques
 Section 6.4 Lists
 Section 6.5 Sets and Multisets
 Section 6.6 Maps and Multimaps
 Section 6.7 Other STL Containers
 Section 6.8 Implementing Reference Semantics
 Section 6.9 When to Use which Container
 Section 6.10 Container Types and Members in Detail

Chapter 7. STL Iterators
 Section 7.1 Header Files for Iterators
 Section 7.2 Iterator Categories
 Section 7.3 Auxiliary Iterator Functions
 Section 7.4 Iterator Adapters
 Section 7.5 Iterator Traits

Chapter 8. STL Function Objects
 Section 8.1 The Concept of Function Objects
 Section 8.2 Predefined Function Objects
 Section 8.3 Supplementary Composing Function Objects

Chapter 9. STL Algorithms
 Section 9.1 Algorithm Header Files
 Section 9.2 Algorithm Overview
 Section 9.3 Auxiliary Functions
 Section 9.4 The
 Section 9.5 Nonmodifying Algorithms
 Section 9.6 Modifying Algorithms
 Section 9.7 Removing Algorithms
 Section 9.8 Mutating Algorithms
 Section 9.9 Sorting Algorithms
 Section 9.10 Sorted Range Algorithms
 Section 9.11 Numeric Algorithms

Chapter 10. Special Containers
 Section 10.1 Stacks
 Section 10.2 Queues
 Section 10.3 Priority Queues
 Section 10.4 Bitsets

Chapter 11. Strings
 Section 11.1 Motivation
 Section 11.2 Description of the String Classes
 Section 11.3 String Class in Detail

Chapter 12. Numerics
 Section 12.1 Complex Numbers
 Section 12.2 Valarrays
 Section 12.3 Global Numeric Functions

Chapter 13. Input/Output Using Stream Classes
 Section 13.1 Common Background of I/O Streams
 Section 13.2 Fundamental Stream Classes and Objects
 Section 13.3 Standard Stream Operators << and >>
 Section 13.4 State of Streams
 Section 13.5 Standard Input/Output Functions
 Section 13.6 Manipulators
 Section 13.7 Formatting
 Section 13.8 Internationalization
 Section 13.9 File Access
 Section 13.10 Connecting Input and Output Streams
 Section 13.11 Stream Classes for Strings
 Section 13.12 Input/Output Operators for User-Defined Types
 Section 13.13 The Stream Buffer Classes
 Section 13.14 Performance Issues

Chapter 14. Internationalization
 Section 14.1 Different Character Encodings
 Section 14.2 The Concept of Locales
 Section 14.3 Locales in Detail
 Section 14.4 Facets in Detail

Chapter 15. Allocators
 Section 15.1 Using Allocators as an Application Programmer
 Section 15.2 Using Allocators as a Library Programmer
 Section 15.3 The Default Allocator
 Section 15.4 A User-Defined Allocator
 Section 15.5 Allocators in Detail
 Section 15.6 Utilities for Uninitialized Memory in Detail

Internet Resources

Bibliography


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. It 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 (I/O) classes
  • Classes for internationalization support

ll 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 listing 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, it 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.