C++11程序设计(第2版 英文版)

C++11程序设计(第2版 英文版)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] (保罗·戴特尔) , [美] (哈维·戴特尔)
2016-03
版次: 2
ISBN: 9787121272646
定价: 148.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 848页
字数: 1266千字
正文语种: 英语
14人买过
  •   《C++11程序设计(第2版)英文版》利用活代码深入研究C++11 和C++ 标准库。内容包括C++11 的新特性,基于模板的标准库容器、迭代器和算法,C++ 标准库字符串,C++ 标准库数组,构造重要类,面向对象编程的案例研究,异常处理,等等。本书示例丰富,包含了从计算机科学、商业、模拟、游戏和其他主题中挑选出来的各种示例程序,并在三个具有工业强度的C++11 编译器上对代码进行了测试;书中配有大量的插图,包括图表、线条图、UML 图、程序和程序输出。
      《C++11程序设计(第2版)英文版》适合具有一定高级语言编程背景的程序员阅读。

      Paul Deitel,Deitel & Associates有限公司的CEO兼CTO,毕业于麻省理工学院,主修信息技术。通过Deitel & Associate有限公司,他已经为行业、政府机关和军队客户提供了数百节编程课程,这些客户包括思科、IBM、西门子、Sun Microsystems、戴尔、Fidelity、肯尼迪航天中心、美国国家强风暴实验室、白沙导弹试验场、Rogue Wave Software、波音公司、SunGard Higher Education、北电网络公司、彪马、iRobot、Invensys等。他和本书的合著者Harvey Deitel博士是畅销全球的编程语言教材、专业书籍和视频的作者。

      Harvey Deitel博士,Deitel & Associates有限公司的董事长和首席战略官,在计算机领域中拥有五十多年的经验。Deitel博士获得了麻省理工学院电子工程(学习计算)的学士和硕士学位,并获得了波士顿大学的数学博士学位(学习计算机科学)。在20世纪60年代,通过先进的计算机技术和计算机应用公司,他成为了创建各种IBM操作系统的团队中的一员。在20世纪70年代,他创建了商业操作系统。他拥有丰富的大学教学经验,在1991年与儿子Paul Deitel创办Deitel & Associates有限公司之前,他是波士顿大学计算机科学系的主任,并获得了终身任职权。Deitel的出版物获得了国际上的认可,并被翻译为繁体中文、简体中文、韩语、日语、德语、俄语、西班牙语、法语、波兰语、意大利语、葡萄牙语、希腊语、乌尔都语和土耳其语。Deitel博士为很多大公司、学术研究机构、政府机关和军方提供了数百场专业编程讲座。
    前言
    1 Introduction
    1.1 Introduction
    1.2 C++
    1.3 Object Technology
    1.4 Typical C++ Development Environment
    1.5 Test-Driving a C++ Application
    1.6 Operating Systems
    1.6.1 Windows―A Proprietary Operating System
    1.6.2 Linux―An Open-Source Operating System
    1.6.3 Apple’s OS X; Apple’s iOS for iPhone?, iPad? and iPod Touch? Devices
    1.6.4 Google’s Android
    1.7 C++11 and the Open Source Boost Libraries
    1.8 Web Resources
    2 Introduction to C++ Programming, Input/Output and Operators
    2.1 Introduction
    2.2 First Program in C++: Printing a Line of Text
    2.3 Modifying Our First C++ Program
    2.4 Another C++ Program: Adding Integers
    2.5 Arithmetic
    2.6 Decision Making: Equality and Relational Operators
    2.7 Wrap-Up
    3 Introduction to Classes, Objects and Strings
    3.1 Introduction
    3.2 Defining a Class with a Member Function
    3.3 Defining a Member Function with a Parameter
    3.4 Data Members, set Member Functions and get Member Functions
    3.5 Initializing Objects with Constructors
    3.6 Placing a Class in a Separate File for Reusability
    3.7 Separating Interface from Implementation
    3.8 Validating Data with set Functions
    3.9 Wrap-Up
    4 Control Statements: Part 1; Assignment, ++ and -- Operators
    4.1 Introduction
    4.2 Control Structures
    4.3 if Selection Statement
    4.4 if … else Double-Selection Statement
    4.5 while Repetition Statement
    4.6 Counter-Controlled Repetition
    4.7 Sentinel-Controlled Repetition
    4.8 Nested Control Statements
    4.9 Assignment Operators
    4.10 Increment and Decrement Operators
    4.11 Wrap-Up
    5 Control Statements: Part 2; Logical Operators
    5.1 Introduction
    5.2 Essentials of Counter-Controlled Repetition
    5.3 for Repetition Statement
    5.4 Examples Using the for Statement
    5.5 do … while Repetition Statement
    5.6 switch Multiple-Selection Statement
    5.7 break and continue Statements
    5.8 Logical Operators
    5.9 Confusing the Equality ( == ) and Assignment ( = ) Operators
    5.10 Wrap-Up
    6 Functions and an Introduction to Recursion
    6.1 Introduction
    6.2 Math Library Functions
    6.3 Function Definitions with Multiple Parameters
    6.4 Function Prototypes and Argument Coercion
    6.5 C++ Standard Library Headers
    6.6 Case Study: Random Number Generation
    6.7 Case Study: Game of Chance; Introducing enum
    6.8 C++11 Random Numbers
    6.9 Storage Classes and Storage Duration
    6.10 Scope Rules
    6.11 Function Call Stack and Activation Records
    6.12 Functions with Empty Parameter Lists
    6.13 Inline Functions
    6.14 References and Reference Parameters
    6.15 Default Arguments
    6.16 Unary Scope Resolution Operator
    6.17 Function Overloading
    6.18 Function Templates
    6.19 Recursion
    6.20 Example Using Recursion: Fibonacci Series
    6.21 Recursion vs. Iteration
    6.22 Wrap-Up
    7 Class Templates array and vector ;
    Catching Exceptions
    7.1 Introduction
    7.2 array s
    7.3 Declaring array s
    7.4 Examples Using array s
    7.4.1 Declaring an array and Using a Loop to Initialize the array ’s Elements
    7.4.2 Initializing an array in a Declaration with an Initializer List
    7.4.3 Specifying an array ’s Size with a Constant Variable and Setting array Elements with Calculations
    7.4.4 Summing the Elements of an array
    7.4.5 Using Bar Charts to Display array Data Graphically
    7.4.6 Using the Elements of an array as Counters
    7.4.7 Using array s to Summarize Survey Results
    7.4.8 Static Local array s and Automatic Local array s
    7.5 Range-Based for Statement
    7.6 Case Study: Class GradeBook Using an array to Store Grades
    7.7 Sorting and Searching array s
    7.8 Multidimensional array s
    7.9 Case Study: Class GradeBook Using a Two-Dimensional array
    7.10 Introduction to C++ Standard Library Class Template vector
    7.11 Wrap-Up
    8 Pointers
    8.1 Introduction
    8.2 Pointer Variable Declarations and Initialization
    8.3 Pointer Operators
    8.4 Pass-by-Reference with Pointers
    8.5 Built-In Arrays
    8.6 Using const with Pointers
    8.6.1 Nonconstant Pointer to Nonconstant Data
    8.6.2 Nonconstant Pointer to Constant Data
    8.6.3 Constant Pointer to Nonconstant Data
    8.6.4 Constant Pointer to Constant Data
    8.7 sizeof Operator
    8.8 Pointer Expressions and Pointer Arithmetic
    8.9 Relationship Between Pointers and Built-In Arrays
    8.10 Pointer-Based Strings
    8.11 Wrap-Up
    9 Classes: A Deeper Look; Throwing Exceptions
    9.1 Introduction
    9.2 Time Class Case Study
    9.3 Class Scope and Accessing Class Members
    9.4 Access Functions and Utility Functions
    9.5 Time Class Case Study: Constructors with Default Arguments
    9.6 Destructors
    9.7 When Constructors and Destructors Are Called
    9.8 Time Class Case Study: A Subtle Trap―Returning a Reference or a Pointer to a private Data Member
    9.9 Default Memberwise Assignment
    9.10 const Objects and const Member Functions
    9.11 Composition: Objects as Members of Classes
    9.12 friend Functions and friend Classes
    9.13 Using the this Pointer
    9.14 static Class Members
    9.15 Wrap-Up
    10 Operator Overloading; Class string
    10.1 Introduction
    10.2 Using the Overloaded Operators of Standard Library Class string
    10.3 Fundamentals of Operator Overloading
    10.4 Overloading Binary Operators
    10.5 Overloading the Binary Stream Insertion and Stream Extraction Operators
    10.6 Overloading Unary Operators
    10.7 Overloading the Unary Prefix and Postfix ++ and -- Operators
    10.8 Case Study: A Date Class
    10.9 Dynamic Memory Management
    10.10 Case Study: Array Class
    10.10.1 Using the Array Class
    10.10.2 Array Class Definition
    10.11 Operators as Member vs. Non-Member Functions
    10.12 Converting Between Types
    10.13 explicit Constructors and Conversion Operators
    10.14 Overloading the Function Call Operator ()
    10.15 Wrap-Up
    11 Object-Oriented Programming: Inheritance
    11.1 Introduction
    11.2 Base Classes and Derived Classes
    11.3 Relationship between Base and Derived Classes
    11.3.1 Creating and Using a CommissionEmployee Class
    11.3.2 Creating a BasePlusCommissionEmployee Class Without Using Inheritance
    11.3.3 Creating a CommissionEmployee ? BasePlusCommissionEmployee Inheritance Hierarchy
    11.3.4 CommissionEmployee ? BasePlusCommissionEmployee Inheritance Hierarchy Using protected Data
    11.3.5 CommissionEmployee ? BasePlusCommissionEmployee Inheritance Hierarchy Using private Data
    11.4 Constructors and Destructors in Derived Classes
    11.5 public , protected and private Inheritance
    11.6 Software Engineering with Inheritance
    11.7 Wrap-Up
    12 Object-Oriented Programming: Polymorphism
    12.1 Introduction
    12.2 Introduction to Polymorphism: Polymorphic Video Game
    12.3 Relationships Among Objects in an Inheritance Hierarchy
    12.3.1 Invoking Base-Class Functions from Derived-Class Objects
    12.3.2 Aiming Derived-Class Pointers at Base-Class Objects
    12.3.3 Derived-Class Member-Function Calls via Base-Class Pointers
    12.3.4 Virtual Functions and Virtual Destructors
    12.4 Type Fields and switch Statements
    12.5 Abstract Classes and Pure virtual Functions
    12.6 Case Study: Payroll System Using Polymorphism
    12.6.1 Creating Abstract Base Class Employee
    12.6.2 Creating Concrete Derived Class SalariedEmployee
    12.6.3 Creating Concrete Derived Class CommissionEmployee
    12.6.4 Creating Indirect Concrete Derived Class BasePlusCommissionEmployee
    12.6.5 Demonstrating Polymorphic Processing
    12.7 (Optional) Polymorphism, Virtual Functions and Dynamic Binding“Under the Hood”
    12.8 Case Study: Payroll System Using Polymorphism and Runtime Type Information with Downcasting, dynamic_cast , typeid and
    type_info
    12.9 Wrap-Up
    13 Stream Input/Output: A Deeper Look
    13.1 Introduction
    13.2 Streams
    13.2.1 Classic Streams vs. Standard Streams
    13.2.2 iostream Library Headers
    13.2.3 Stream Input/Output Classes and Objects
    13.3 Stream Output
    13.3.1 Output of char * Variables
    13.3.2 Character Output Using Member Function put
    13.4 Stream Input
    13.4.1 get and getline Member Functions
    13.4.2 istream Member Functions peek , putback and ignore
    13.4.3 Type-Safe I/O
    13.5 Unformatted I/O Using read , write and gcount
    13.6 Introduction to Stream Manipulators
    13.6.1 Integral Stream Base: dec , oct , hex and setbase
    13.6.2 Floating-Point Precision ( precision , setprecision )
    13.6.3 Field Width ( width , setw )
    13.6.4 User-Defined Output Stream Manipulators
    13.7 Stream Format States and Stream Manipulators
    13.7.1 Trailing Zeros and Decimal Points ( showpoint )
    13.7.2 Justification ( left , right and internal )
    13.7.3 Padding ( fill , setfill )
    13.7.4 Integral Stream Base ( dec , oct , hex , showbase )
    13.7.5 Floating-Point Numbers; Scientific and Fixed Notation( scientific , fixed )
    13.7.6 Uppercase/Lowercase Control ( uppercase )
    13.7.7 Specifying Boolean Format ( boolalpha )
    13.7.8 Setting and Resetting the Format State via Member Function flags
    13.8 Stream Error States
    13.9 Tying an Output Stream to an Input Stream
    13.10 Wrap-Up
    14 File Processing
    14.1 Introduction
    14.2 Files and Streams
    14.3 Creating a Sequential File
    14.4 Reading Data from a Sequential File
    14.5 Updating Sequential Files
    14.6 Random-Access Files
    14.7 Creating a Random-Access File
    14.8 Writing Data Randomly to a Random-Access File
    14.9 Reading from a Random-Access File Sequentially
    14.10 Case Study: A Transaction-Processing Program
    14.11 Object Serialization
    14.12 Wrap-Up
    15 Standard Library Containers and Iterators
    15.1 Introduction
    15.2 Introduction to Containers
    15.3 Introduction to Iterators
    15.4 Introduction to Algorithms
    15.5 Sequence Containers
    15.5.1 vector Sequence Container
    15.5.2 list Sequence Container
    15.5.3 deque Sequence Container
    15.6 Associative Containers
    15.6.1 multiset Associative Container
    15.6.2 set Associative Container
    15.6.3 multimap Associative Container
    15.6.4 map Associative Container
    15.7 Container Adapters
    15.7.1 stack Adapter
    15.7.2 queue Adapter
    15.7.3 priority_queue Adapter
    15.8 Class bitset
    15.9 Wrap-Up
    16 Standard Library Algorithms
    16.1 Introduction
    16.2 Minimum Iterator Requirements
    16.3 Algorithms
    16.3.1 fill , fill_n , generate and generate_n
    16.3.2 equal , mismatch and lexicographical_compare
    16.3.3 remove , remove_if , remove_copy and remove_copy_if
    16.3.4 replace , replace_if , replace_copy and replace_copy_if
    16.3.5 Mathematical Algorithms
    16.3.6 Basic Searching and Sorting Algorithms
    16.3.7 swap , iter_swap and swap_ranges
    16.3.8 copy_backward , merge , unique and reverse
    16.3.9 inplace_merge , unique_copy and reverse_copy
    16.3.10 Set Operations
    16.3.11 lower_bound , upper_bound and equal_range
    16.3.12 Heapsort
    16.3.13 min , max , minmax and minmax_element
    16.4 Function Objects
    16.5 Lambda Expressions
    16.6 Standard Library Algorithm Summary
    16.7 Wrap-Up
    17 Exception Handling: A Deeper Look
    17.1 Introduction
    17.2 Example: Handling an Attempt to Divide by Zero
    17.3 Rethrowing an Exception
    17.4 Stack Unwinding
    17.5 When to Use Exception Handling
    17.6 Constructors, Destructors and Exception Handling
    17.7 Exceptions and Inheritance
    17.8 Processing new Failures
    17.9 Class unique_ptr and Dynamic Memory Allocation
    17.10 Standard Library Exception Hierarchy
    17.11 Wrap-Up
    18 Introduction to Custom Templates
    18.1 Introduction
    18.2 Class Templates
    18.3 Function Template to Manipulate a Class-Template Specialization Object
    18.4 Nontype Parameters
    18.5 Default Arguments for Template Type Parameters
    18.6 Overloading Function Templates
    18.7 Wrap-Up
    19 Class string and String Stream Processing: A Deeper Look
    19.1 Introduction
    19.2 string Assignment and Concatenation
    19.3 Comparing string s
    19.4 Substrings
    19.5 Swapping string s
    19.6 string Characteristics
    19.7 Finding Substrings and Characters in a string
    19.8 Replacing Characters in a string
    19.9 Inserting Characters into a string
    19.10 Conversion to Pointer-Based char * Strings
    19.11 Iterators
    19.12 String Stream Processing
    19.13 C++11 Numeric Conversion Functions
    19.14 Wrap-Up
    20 Bits, Characters, C Strings and struct s
    20.1 Introduction
    20.2 Structure Definitions
    20.3 typedef
    20.4 Example: Card Shuffling and Dealing Simulation
    20.5 Bitwise Operators
    20.6 Bit Fields
    20.7 Character-Handling Library
    20.8 C String-Manipulation Functions
    20.9 C String-Conversion Functions
    20.10 Search Functions of the C String-Handling Library
    20.11 Memory Functions of the C String-Handling Library
    20.12 Wrap-Up
    21 Other Topics
    21.1 Introduction
    21.2 const_cast Operator
    21.3 mutable Class Members
    21.4 namespace s
    21.5 Operator Keywords
    21.6 Pointers to Class Members ( .* and ->* )
    21.7 Multiple Inheritance
    21.8 Multiple Inheritance and virtual Base Classes
    21.9 Wrap-Up
    22 ATM Case Study, Part 1:Object-Oriented Design with the UML
    22.1 Introduction
    22.2 Introduction to Object-Oriented Analysis and Design
    22.3 Examining the ATM Requirements Document
    22.4 Identifying the Classes in the ATM Requirements Document
    22.5 Identifying Class Attributes
    22.6 Identifying Objects’ States and Activities
    22.7 Identifying Class Operations
    22.8 Indicating Collaboration Among Objects
    22.9 Wrap-Up
    23 ATM Case Study, Part 2:Implementing an Object-Oriented Design
    23.1 Introduction
    23.2 Starting to Program the Classes of the ATM System
    23.3 Incorporating Inheritance into the ATM System
    23.4 ATM Case Study Implementation
    23.4.1 Class ATM
    23.4.2 Class Screen
    23.4.3 Class Keypad
    23.4.4 Class CashDispenser
    23.4.5 Class DepositSlot
    23.4.6 Class Account
    23.4.7 Class BankDatabase
    23.4.8 Class Transaction
    23.4.9 Class BalanceInquiry
    23.4.10 Class Withdrawal
    23.4.11 Class Deposit
    23.4.12 Test Program ATMCaseStudy.cpp
    23.5 Wrap-Up
    A Operator Precedence and Associativity
    B ASCII Character Set
    C Fundamental Types
    D Number Systems
    D.1 Introduction
    D.2 Abbreviating Binary Numbers as Octal and Hexadecimal Numbers
    D.3 Converting Octal and Hexadecimal Numbers to Binary Numbers
    D.4 Converting from Binary, Octal or Hexadecimal to Decimal
    D.5 Converting from Decimal to Binary, Octal or Hexadecimal
    D.6 Negative Binary Numbers: Two’s Complement Notation
    E Preprocessor
    E.1 Introduction
    E.2 #include Preprocessing Directive
    E.3 #define Preprocessing Directive: Symbolic Constants
    E.4 #define Preprocessing Directive: Macros
    E.5 Conditional Compilation
    E.6 #error and #pragma Preprocessing Directives
    E.7 Operators # and ##
    E.8 Predefined Symbolic Constants
    E.9 Assertions
    E.10 Wrap-Up
    Index
    线上章节及附录
    第 24 章及附录 F~K 为 PDF 文档
  • 内容简介:
      《C++11程序设计(第2版)英文版》利用活代码深入研究C++11 和C++ 标准库。内容包括C++11 的新特性,基于模板的标准库容器、迭代器和算法,C++ 标准库字符串,C++ 标准库数组,构造重要类,面向对象编程的案例研究,异常处理,等等。本书示例丰富,包含了从计算机科学、商业、模拟、游戏和其他主题中挑选出来的各种示例程序,并在三个具有工业强度的C++11 编译器上对代码进行了测试;书中配有大量的插图,包括图表、线条图、UML 图、程序和程序输出。
      《C++11程序设计(第2版)英文版》适合具有一定高级语言编程背景的程序员阅读。

  • 作者简介:
      Paul Deitel,Deitel & Associates有限公司的CEO兼CTO,毕业于麻省理工学院,主修信息技术。通过Deitel & Associate有限公司,他已经为行业、政府机关和军队客户提供了数百节编程课程,这些客户包括思科、IBM、西门子、Sun Microsystems、戴尔、Fidelity、肯尼迪航天中心、美国国家强风暴实验室、白沙导弹试验场、Rogue Wave Software、波音公司、SunGard Higher Education、北电网络公司、彪马、iRobot、Invensys等。他和本书的合著者Harvey Deitel博士是畅销全球的编程语言教材、专业书籍和视频的作者。

      Harvey Deitel博士,Deitel & Associates有限公司的董事长和首席战略官,在计算机领域中拥有五十多年的经验。Deitel博士获得了麻省理工学院电子工程(学习计算)的学士和硕士学位,并获得了波士顿大学的数学博士学位(学习计算机科学)。在20世纪60年代,通过先进的计算机技术和计算机应用公司,他成为了创建各种IBM操作系统的团队中的一员。在20世纪70年代,他创建了商业操作系统。他拥有丰富的大学教学经验,在1991年与儿子Paul Deitel创办Deitel & Associates有限公司之前,他是波士顿大学计算机科学系的主任,并获得了终身任职权。Deitel的出版物获得了国际上的认可,并被翻译为繁体中文、简体中文、韩语、日语、德语、俄语、西班牙语、法语、波兰语、意大利语、葡萄牙语、希腊语、乌尔都语和土耳其语。Deitel博士为很多大公司、学术研究机构、政府机关和军方提供了数百场专业编程讲座。
  • 目录:
    前言
    1 Introduction
    1.1 Introduction
    1.2 C++
    1.3 Object Technology
    1.4 Typical C++ Development Environment
    1.5 Test-Driving a C++ Application
    1.6 Operating Systems
    1.6.1 Windows―A Proprietary Operating System
    1.6.2 Linux―An Open-Source Operating System
    1.6.3 Apple’s OS X; Apple’s iOS for iPhone?, iPad? and iPod Touch? Devices
    1.6.4 Google’s Android
    1.7 C++11 and the Open Source Boost Libraries
    1.8 Web Resources
    2 Introduction to C++ Programming, Input/Output and Operators
    2.1 Introduction
    2.2 First Program in C++: Printing a Line of Text
    2.3 Modifying Our First C++ Program
    2.4 Another C++ Program: Adding Integers
    2.5 Arithmetic
    2.6 Decision Making: Equality and Relational Operators
    2.7 Wrap-Up
    3 Introduction to Classes, Objects and Strings
    3.1 Introduction
    3.2 Defining a Class with a Member Function
    3.3 Defining a Member Function with a Parameter
    3.4 Data Members, set Member Functions and get Member Functions
    3.5 Initializing Objects with Constructors
    3.6 Placing a Class in a Separate File for Reusability
    3.7 Separating Interface from Implementation
    3.8 Validating Data with set Functions
    3.9 Wrap-Up
    4 Control Statements: Part 1; Assignment, ++ and -- Operators
    4.1 Introduction
    4.2 Control Structures
    4.3 if Selection Statement
    4.4 if … else Double-Selection Statement
    4.5 while Repetition Statement
    4.6 Counter-Controlled Repetition
    4.7 Sentinel-Controlled Repetition
    4.8 Nested Control Statements
    4.9 Assignment Operators
    4.10 Increment and Decrement Operators
    4.11 Wrap-Up
    5 Control Statements: Part 2; Logical Operators
    5.1 Introduction
    5.2 Essentials of Counter-Controlled Repetition
    5.3 for Repetition Statement
    5.4 Examples Using the for Statement
    5.5 do … while Repetition Statement
    5.6 switch Multiple-Selection Statement
    5.7 break and continue Statements
    5.8 Logical Operators
    5.9 Confusing the Equality ( == ) and Assignment ( = ) Operators
    5.10 Wrap-Up
    6 Functions and an Introduction to Recursion
    6.1 Introduction
    6.2 Math Library Functions
    6.3 Function Definitions with Multiple Parameters
    6.4 Function Prototypes and Argument Coercion
    6.5 C++ Standard Library Headers
    6.6 Case Study: Random Number Generation
    6.7 Case Study: Game of Chance; Introducing enum
    6.8 C++11 Random Numbers
    6.9 Storage Classes and Storage Duration
    6.10 Scope Rules
    6.11 Function Call Stack and Activation Records
    6.12 Functions with Empty Parameter Lists
    6.13 Inline Functions
    6.14 References and Reference Parameters
    6.15 Default Arguments
    6.16 Unary Scope Resolution Operator
    6.17 Function Overloading
    6.18 Function Templates
    6.19 Recursion
    6.20 Example Using Recursion: Fibonacci Series
    6.21 Recursion vs. Iteration
    6.22 Wrap-Up
    7 Class Templates array and vector ;
    Catching Exceptions
    7.1 Introduction
    7.2 array s
    7.3 Declaring array s
    7.4 Examples Using array s
    7.4.1 Declaring an array and Using a Loop to Initialize the array ’s Elements
    7.4.2 Initializing an array in a Declaration with an Initializer List
    7.4.3 Specifying an array ’s Size with a Constant Variable and Setting array Elements with Calculations
    7.4.4 Summing the Elements of an array
    7.4.5 Using Bar Charts to Display array Data Graphically
    7.4.6 Using the Elements of an array as Counters
    7.4.7 Using array s to Summarize Survey Results
    7.4.8 Static Local array s and Automatic Local array s
    7.5 Range-Based for Statement
    7.6 Case Study: Class GradeBook Using an array to Store Grades
    7.7 Sorting and Searching array s
    7.8 Multidimensional array s
    7.9 Case Study: Class GradeBook Using a Two-Dimensional array
    7.10 Introduction to C++ Standard Library Class Template vector
    7.11 Wrap-Up
    8 Pointers
    8.1 Introduction
    8.2 Pointer Variable Declarations and Initialization
    8.3 Pointer Operators
    8.4 Pass-by-Reference with Pointers
    8.5 Built-In Arrays
    8.6 Using const with Pointers
    8.6.1 Nonconstant Pointer to Nonconstant Data
    8.6.2 Nonconstant Pointer to Constant Data
    8.6.3 Constant Pointer to Nonconstant Data
    8.6.4 Constant Pointer to Constant Data
    8.7 sizeof Operator
    8.8 Pointer Expressions and Pointer Arithmetic
    8.9 Relationship Between Pointers and Built-In Arrays
    8.10 Pointer-Based Strings
    8.11 Wrap-Up
    9 Classes: A Deeper Look; Throwing Exceptions
    9.1 Introduction
    9.2 Time Class Case Study
    9.3 Class Scope and Accessing Class Members
    9.4 Access Functions and Utility Functions
    9.5 Time Class Case Study: Constructors with Default Arguments
    9.6 Destructors
    9.7 When Constructors and Destructors Are Called
    9.8 Time Class Case Study: A Subtle Trap―Returning a Reference or a Pointer to a private Data Member
    9.9 Default Memberwise Assignment
    9.10 const Objects and const Member Functions
    9.11 Composition: Objects as Members of Classes
    9.12 friend Functions and friend Classes
    9.13 Using the this Pointer
    9.14 static Class Members
    9.15 Wrap-Up
    10 Operator Overloading; Class string
    10.1 Introduction
    10.2 Using the Overloaded Operators of Standard Library Class string
    10.3 Fundamentals of Operator Overloading
    10.4 Overloading Binary Operators
    10.5 Overloading the Binary Stream Insertion and Stream Extraction Operators
    10.6 Overloading Unary Operators
    10.7 Overloading the Unary Prefix and Postfix ++ and -- Operators
    10.8 Case Study: A Date Class
    10.9 Dynamic Memory Management
    10.10 Case Study: Array Class
    10.10.1 Using the Array Class
    10.10.2 Array Class Definition
    10.11 Operators as Member vs. Non-Member Functions
    10.12 Converting Between Types
    10.13 explicit Constructors and Conversion Operators
    10.14 Overloading the Function Call Operator ()
    10.15 Wrap-Up
    11 Object-Oriented Programming: Inheritance
    11.1 Introduction
    11.2 Base Classes and Derived Classes
    11.3 Relationship between Base and Derived Classes
    11.3.1 Creating and Using a CommissionEmployee Class
    11.3.2 Creating a BasePlusCommissionEmployee Class Without Using Inheritance
    11.3.3 Creating a CommissionEmployee ? BasePlusCommissionEmployee Inheritance Hierarchy
    11.3.4 CommissionEmployee ? BasePlusCommissionEmployee Inheritance Hierarchy Using protected Data
    11.3.5 CommissionEmployee ? BasePlusCommissionEmployee Inheritance Hierarchy Using private Data
    11.4 Constructors and Destructors in Derived Classes
    11.5 public , protected and private Inheritance
    11.6 Software Engineering with Inheritance
    11.7 Wrap-Up
    12 Object-Oriented Programming: Polymorphism
    12.1 Introduction
    12.2 Introduction to Polymorphism: Polymorphic Video Game
    12.3 Relationships Among Objects in an Inheritance Hierarchy
    12.3.1 Invoking Base-Class Functions from Derived-Class Objects
    12.3.2 Aiming Derived-Class Pointers at Base-Class Objects
    12.3.3 Derived-Class Member-Function Calls via Base-Class Pointers
    12.3.4 Virtual Functions and Virtual Destructors
    12.4 Type Fields and switch Statements
    12.5 Abstract Classes and Pure virtual Functions
    12.6 Case Study: Payroll System Using Polymorphism
    12.6.1 Creating Abstract Base Class Employee
    12.6.2 Creating Concrete Derived Class SalariedEmployee
    12.6.3 Creating Concrete Derived Class CommissionEmployee
    12.6.4 Creating Indirect Concrete Derived Class BasePlusCommissionEmployee
    12.6.5 Demonstrating Polymorphic Processing
    12.7 (Optional) Polymorphism, Virtual Functions and Dynamic Binding“Under the Hood”
    12.8 Case Study: Payroll System Using Polymorphism and Runtime Type Information with Downcasting, dynamic_cast , typeid and
    type_info
    12.9 Wrap-Up
    13 Stream Input/Output: A Deeper Look
    13.1 Introduction
    13.2 Streams
    13.2.1 Classic Streams vs. Standard Streams
    13.2.2 iostream Library Headers
    13.2.3 Stream Input/Output Classes and Objects
    13.3 Stream Output
    13.3.1 Output of char * Variables
    13.3.2 Character Output Using Member Function put
    13.4 Stream Input
    13.4.1 get and getline Member Functions
    13.4.2 istream Member Functions peek , putback and ignore
    13.4.3 Type-Safe I/O
    13.5 Unformatted I/O Using read , write and gcount
    13.6 Introduction to Stream Manipulators
    13.6.1 Integral Stream Base: dec , oct , hex and setbase
    13.6.2 Floating-Point Precision ( precision , setprecision )
    13.6.3 Field Width ( width , setw )
    13.6.4 User-Defined Output Stream Manipulators
    13.7 Stream Format States and Stream Manipulators
    13.7.1 Trailing Zeros and Decimal Points ( showpoint )
    13.7.2 Justification ( left , right and internal )
    13.7.3 Padding ( fill , setfill )
    13.7.4 Integral Stream Base ( dec , oct , hex , showbase )
    13.7.5 Floating-Point Numbers; Scientific and Fixed Notation( scientific , fixed )
    13.7.6 Uppercase/Lowercase Control ( uppercase )
    13.7.7 Specifying Boolean Format ( boolalpha )
    13.7.8 Setting and Resetting the Format State via Member Function flags
    13.8 Stream Error States
    13.9 Tying an Output Stream to an Input Stream
    13.10 Wrap-Up
    14 File Processing
    14.1 Introduction
    14.2 Files and Streams
    14.3 Creating a Sequential File
    14.4 Reading Data from a Sequential File
    14.5 Updating Sequential Files
    14.6 Random-Access Files
    14.7 Creating a Random-Access File
    14.8 Writing Data Randomly to a Random-Access File
    14.9 Reading from a Random-Access File Sequentially
    14.10 Case Study: A Transaction-Processing Program
    14.11 Object Serialization
    14.12 Wrap-Up
    15 Standard Library Containers and Iterators
    15.1 Introduction
    15.2 Introduction to Containers
    15.3 Introduction to Iterators
    15.4 Introduction to Algorithms
    15.5 Sequence Containers
    15.5.1 vector Sequence Container
    15.5.2 list Sequence Container
    15.5.3 deque Sequence Container
    15.6 Associative Containers
    15.6.1 multiset Associative Container
    15.6.2 set Associative Container
    15.6.3 multimap Associative Container
    15.6.4 map Associative Container
    15.7 Container Adapters
    15.7.1 stack Adapter
    15.7.2 queue Adapter
    15.7.3 priority_queue Adapter
    15.8 Class bitset
    15.9 Wrap-Up
    16 Standard Library Algorithms
    16.1 Introduction
    16.2 Minimum Iterator Requirements
    16.3 Algorithms
    16.3.1 fill , fill_n , generate and generate_n
    16.3.2 equal , mismatch and lexicographical_compare
    16.3.3 remove , remove_if , remove_copy and remove_copy_if
    16.3.4 replace , replace_if , replace_copy and replace_copy_if
    16.3.5 Mathematical Algorithms
    16.3.6 Basic Searching and Sorting Algorithms
    16.3.7 swap , iter_swap and swap_ranges
    16.3.8 copy_backward , merge , unique and reverse
    16.3.9 inplace_merge , unique_copy and reverse_copy
    16.3.10 Set Operations
    16.3.11 lower_bound , upper_bound and equal_range
    16.3.12 Heapsort
    16.3.13 min , max , minmax and minmax_element
    16.4 Function Objects
    16.5 Lambda Expressions
    16.6 Standard Library Algorithm Summary
    16.7 Wrap-Up
    17 Exception Handling: A Deeper Look
    17.1 Introduction
    17.2 Example: Handling an Attempt to Divide by Zero
    17.3 Rethrowing an Exception
    17.4 Stack Unwinding
    17.5 When to Use Exception Handling
    17.6 Constructors, Destructors and Exception Handling
    17.7 Exceptions and Inheritance
    17.8 Processing new Failures
    17.9 Class unique_ptr and Dynamic Memory Allocation
    17.10 Standard Library Exception Hierarchy
    17.11 Wrap-Up
    18 Introduction to Custom Templates
    18.1 Introduction
    18.2 Class Templates
    18.3 Function Template to Manipulate a Class-Template Specialization Object
    18.4 Nontype Parameters
    18.5 Default Arguments for Template Type Parameters
    18.6 Overloading Function Templates
    18.7 Wrap-Up
    19 Class string and String Stream Processing: A Deeper Look
    19.1 Introduction
    19.2 string Assignment and Concatenation
    19.3 Comparing string s
    19.4 Substrings
    19.5 Swapping string s
    19.6 string Characteristics
    19.7 Finding Substrings and Characters in a string
    19.8 Replacing Characters in a string
    19.9 Inserting Characters into a string
    19.10 Conversion to Pointer-Based char * Strings
    19.11 Iterators
    19.12 String Stream Processing
    19.13 C++11 Numeric Conversion Functions
    19.14 Wrap-Up
    20 Bits, Characters, C Strings and struct s
    20.1 Introduction
    20.2 Structure Definitions
    20.3 typedef
    20.4 Example: Card Shuffling and Dealing Simulation
    20.5 Bitwise Operators
    20.6 Bit Fields
    20.7 Character-Handling Library
    20.8 C String-Manipulation Functions
    20.9 C String-Conversion Functions
    20.10 Search Functions of the C String-Handling Library
    20.11 Memory Functions of the C String-Handling Library
    20.12 Wrap-Up
    21 Other Topics
    21.1 Introduction
    21.2 const_cast Operator
    21.3 mutable Class Members
    21.4 namespace s
    21.5 Operator Keywords
    21.6 Pointers to Class Members ( .* and ->* )
    21.7 Multiple Inheritance
    21.8 Multiple Inheritance and virtual Base Classes
    21.9 Wrap-Up
    22 ATM Case Study, Part 1:Object-Oriented Design with the UML
    22.1 Introduction
    22.2 Introduction to Object-Oriented Analysis and Design
    22.3 Examining the ATM Requirements Document
    22.4 Identifying the Classes in the ATM Requirements Document
    22.5 Identifying Class Attributes
    22.6 Identifying Objects’ States and Activities
    22.7 Identifying Class Operations
    22.8 Indicating Collaboration Among Objects
    22.9 Wrap-Up
    23 ATM Case Study, Part 2:Implementing an Object-Oriented Design
    23.1 Introduction
    23.2 Starting to Program the Classes of the ATM System
    23.3 Incorporating Inheritance into the ATM System
    23.4 ATM Case Study Implementation
    23.4.1 Class ATM
    23.4.2 Class Screen
    23.4.3 Class Keypad
    23.4.4 Class CashDispenser
    23.4.5 Class DepositSlot
    23.4.6 Class Account
    23.4.7 Class BankDatabase
    23.4.8 Class Transaction
    23.4.9 Class BalanceInquiry
    23.4.10 Class Withdrawal
    23.4.11 Class Deposit
    23.4.12 Test Program ATMCaseStudy.cpp
    23.5 Wrap-Up
    A Operator Precedence and Associativity
    B ASCII Character Set
    C Fundamental Types
    D Number Systems
    D.1 Introduction
    D.2 Abbreviating Binary Numbers as Octal and Hexadecimal Numbers
    D.3 Converting Octal and Hexadecimal Numbers to Binary Numbers
    D.4 Converting from Binary, Octal or Hexadecimal to Decimal
    D.5 Converting from Decimal to Binary, Octal or Hexadecimal
    D.6 Negative Binary Numbers: Two’s Complement Notation
    E Preprocessor
    E.1 Introduction
    E.2 #include Preprocessing Directive
    E.3 #define Preprocessing Directive: Symbolic Constants
    E.4 #define Preprocessing Directive: Macros
    E.5 Conditional Compilation
    E.6 #error and #pragma Preprocessing Directives
    E.7 Operators # and ##
    E.8 Predefined Symbolic Constants
    E.9 Assertions
    E.10 Wrap-Up
    Index
    线上章节及附录
    第 24 章及附录 F~K 为 PDF 文档
查看详情
系列丛书 / 更多
C++11程序设计(第2版 英文版)
Effective Java(第2版 英文版)
[美]Joshua Bloch(约书亚·布洛赫) 著
C++11程序设计(第2版 英文版)
代码大全(第2版 英文版)
[美]Steve McConnell(史蒂夫·迈克康奈尔) 著
C++11程序设计(第2版 英文版)
Effective Javascript:编写高质量JavaScript代码的68个有效方法(英文版)
[美]David Herman(大卫·赫尔曼) 著
C++11程序设计(第2版 英文版)
Java虚拟机规范(Java SE 8版 英文版)
[美]Tim(蒂姆·林霍尔姆)、[美]Frank(费兰克·耶林)、[美]Gilad(吉拉德·布拉查)、[美]Alex Buckley(亚力克斯·巴克利) 著
C++11程序设计(第2版 英文版)
C11编程导论(英文版)
[美]Paul(保罗·戴特尔)、Harvey Deitel(哈维·戴特尔) 著
C++11程序设计(第2版 英文版)
C语言程序设计(第4版 英文版)
[美]Stephen G.Kochan(史蒂芬·G·寇肯) 著
C++11程序设计(第2版 英文版)
实现领域驱动设计英文版
[美]Vaughn Vernon(沃恩·弗农) 著
C++11程序设计(第2版 英文版)
Effective Objective-C 2.0:编写高质量iOS与OS X代码的52个有效方法 英文版
[美]Matt Galloway(马特·加洛韦) 著
C++11程序设计(第2版 英文版)
Clean Architecture:软件架构与设计匠艺(英文版)
[美]Robert、C.Martin 著
C++11程序设计(第2版 英文版)
Effective Ruby:编写高质量Ruby代码的48个有效方法(英文版)
[美]Peter J.Jones(彼得·J.琼斯) 著
C++11程序设计(第2版 英文版)
Java SE8 程序设计(第3版 英文版)
[美]Paul(保罗·戴特尔)、Harvey Deitel(哈维·戴特尔) 著
C++11程序设计(第2版 英文版)
Effective SQL:编写高质量SQL语句的61条有效方法(英文版)
约翰·L·威克斯(John L.Viescas);道格拉斯·J·斯蒂尔(Douglas J.Steele);本·G·克洛希尔(Ben G.Clothier)
相关图书 / 更多
C++11程序设计(第2版 英文版)
C++之旅(第3版)(英文版)
(美)本贾尼·斯特劳斯特鲁普
C++11程序设计(第2版 英文版)
C++趣味编程及算法入门 全国青少年软件编程等级考试与信息学竞赛通关指南(附600道习题+700个教学视频)
王桂平 等 编著
C++11程序设计(第2版 英文版)
C++那些事
程克非,张兴,崔晓通,秦蔚蓉
C++11程序设计(第2版 英文版)
C++编程这样学
胡芳
C++11程序设计(第2版 英文版)
C++程序设计案例教程(线上线下混合版)
杨卫明;李晓虹
C++11程序设计(第2版 英文版)
C++之旅(第3版)
[美]Bjarne Stroustrup(本贾尼 斯特劳斯特鲁普
C++11程序设计(第2版 英文版)
C++面向对象程序设计(第4版)
谭浩强
C++11程序设计(第2版 英文版)
C++高性能编程
(瑞典)比约恩 安德里斯特(Bj.rn Andrist),(瑞典)维克托 塞尔(Viktor Sehr)
C++11程序设计(第2版 英文版)
C++开发案例精讲
杨国兴 著
C++11程序设计(第2版 英文版)
C++ Concurrency in Action
Anthony Williams
C++11程序设计(第2版 英文版)
C++语言设计教程(计算机专业十四五精品教材)
苏菲、王芬、朱腾 编
C++11程序设计(第2版 英文版)
C++程序设计基础教程
丁卫平 程学云 陈文兰 主编;任红建 沈晓红 文万志 副主编
您可能感兴趣 / 更多
C++11程序设计(第2版 英文版)
归属感:如何通过社群获得商业竞争优势
[美]大卫·斯平克斯(David Spinks) 著;颉腾文化 出品
C++11程序设计(第2版 英文版)
《世界上最大的肚子》2024百班千人暑期书目学前中班名师推荐全新正版现货速发
[美]雷米·查利普(美)柏顿·萨普瑞
C++11程序设计(第2版 英文版)
经济学通义
[美]阿门·A.阿尔钦 (美)威廉·R.艾伦 著;[美]杰里·L.乔丹 编
C++11程序设计(第2版 英文版)
数字化领导力 数字化转型锦囊,领导力精进指南 一本书掌握数字化转型领导力之道
[美]艾萨克·萨科里克 著;王磊 译;颉腾文化 出品;邓斌
C++11程序设计(第2版 英文版)
法哲学基本原理
[美]马克·C.墨菲
C++11程序设计(第2版 英文版)
雪花的故事(用照片展示雪花的秘密,为你揭开冬日奇景的奥秘)
[美]马克·卡西诺[美]乔恩·尼尔森
C++11程序设计(第2版 英文版)
杜甫传
[美]弗洛伦斯.艾思柯
C++11程序设计(第2版 英文版)
神奇的数字零:从数字0开始的极简数学史和人类发展史
[美]查尔斯·塞弗(Charles Seife)著 杨杨立汝 译
C++11程序设计(第2版 英文版)
美利坚在燃烧:20世纪60年代以来的警察暴力与黑人反抗
[美]伊丽莎白·欣顿 著 胡位钧 译
C++11程序设计(第2版 英文版)
温柔亲启
[美]艾米莉·狄金森 著;[美]艾伦·路易斯·哈特、[美]玛莎·内尔·史密斯 编
C++11程序设计(第2版 英文版)
儒教中国及其现代命运(三部曲)
[美]列文森 作者;[中]季剑青 译者
C++11程序设计(第2版 英文版)
逃家小兔成长绘本系列
[美]玛格丽特.怀兹.布朗