Object-Oriented Programming in C++
暫譯: C++ 物件導向程式設計

Nicolai M. Josuttis

  • 出版商: Wiley
  • 出版日期: 2002-12-13
  • 售價: $1,200
  • 貴賓價: 9.8$1,176
  • 語言: 英文
  • 頁數: 624
  • 裝訂: Paperback
  • ISBN: 0470843993
  • ISBN-13: 9780470843994
  • 相關分類: C++ 程式語言Object-oriented
  • 無法訂購

買這商品的人也買了...

商品描述

C++ is now established as one of the leading industry programming languages for object-oriented software development. Its advantages over other languages include speed and flexibility. It is used as the base for many commercial software products and for performance solutions to complex problems. Not often taught as the primary programming language, students are frequently expected to pick up the language for themselves. This book is an ideal student self-learning guide.

As a step-by-step tutorial, this book teaches all language features and explains their practical usage. Intuitive examples are used that are neither too complex to distract, nor oversimplified. A key concept in C++ is programming with templates, which can help to program generic solutions - for example implementing polymorphism. Nicolai Josuttis teaches how to combine templates with object-oriented programming to produce the power of modern C++ development for high performance programs. It is a book that goes well beyond the basics.

A supplementary website, including source code, can be found at www.josuttis.com/cppbook

Features:

  • comprehensive, detailed, readable, practical and up-to-date

  • teaches how to get the power from C++, using the current ANSI language standard and programming mode

  • specific hints help C and Java programmers switch and compare languages.

  • website provides more examples and links to useful online resources.

Table of Contents

Preface.

1. About this Book.

Why Did Write this Book?

Prerequisites.

Organization of the Book.

How Should You Read this Book?

Example Code and Additional Informations.

Feedback.

2. Introduction: C++ and Object-Oriented Programming.

The C++ Language.

C++ as an Object-Oriented Programming Language.

Other Concepts of C++.

Teminology.

3. Basic Concepts of C++ Programs.

The First Program.

Types, Operators, and Control Constructs.

Functions and Modules.

Strings.

Collections.

Exception Handling.

Pointers, Arrays, and C-Strings.

Memory Management Using new and delete.

Communication with the Outside World.

4. Class Programming.

The First Class: Fraction.

Operators for Classes.

Running Time and Code Optimization.

References and Constants.

Input and Output Using Streams.

Friends and Other Types.

Exception Handling for Classes.

5. Inheritance and Polymorphism. Virtual Functions.

Polymorphism.

Multiple Inheritance.

Design Pitfalls with Inheritance.

6. Dynamic and Static Members.

Dynamic Members.

Other Aspects of Dynamic Members.

Inheritance of Classes with Dynamic Members.

Classes Containing Classes.

Static Members and Auxiliary Types.

7. Templates.

Why Templates?

Function Templates.

Class Templates.

Non-Type Template Parameters.

Additional Aspects of Templates.

Templates in Practice.

8. The Standard I/O Library in Detail.

The Standard Stream Classes.

File Access.

Stream Classes for Strings.

9. Other Language Features and Details.

Additional Details of the Standard Library.

Defining Special Operators.

Additional Aspects of new and delete.

Function Pointers and Member Pointers.

Combining C++ with C Code.

Additional Keywords.

10. Summary.

Hierarchy of C++ Operators.

Class-Specific Properties of Operations.

Rules for Automatic Type Conversion.

Useful Programming Guidelines and Conventions.

Bibliography.

Glossary.

Index.

商品描述(中文翻譯)

C++ 現已確立為物件導向軟體開發的主要行業程式語言之一。它相較於其他語言的優勢包括速度和靈活性。C++ 被用作許多商業軟體產品的基礎,以及解決複雜問題的性能解決方案。雖然不常作為主要程式語言教授,但學生經常被期望自行學習這門語言。本書是理想的學生自學指南。

本書作為逐步教程,教授所有語言特性並解釋其實際用法。使用的範例直觀,既不過於複雜以至於分散注意力,也不過於簡化。C++ 中的一個關鍵概念是使用模板進行程式設計,這可以幫助編寫通用解決方案,例如實現多型性。Nicolai Josuttis 教授如何將模板與物件導向程式設計結合,以產生現代 C++ 開發的強大功能,適用於高性能程式。這本書的內容遠超過基礎知識。

補充網站,包括源代碼,可以在 www.josuttis.com/cppbook 找到。

特點:
- 全面、詳細、可讀、實用且與時俱進
- 教授如何從 C++ 中獲取力量,使用當前的 ANSI 語言標準和程式設計模式
- 具體提示幫助 C 和 Java 程式設計師切換和比較語言
- 網站提供更多範例和有用的在線資源連結

目錄
前言
1. 關於本書
- 為什麼寫這本書?
- 先決條件
- 本書的組織
- 您應該如何閱讀本書?
- 範例代碼和附加資訊
- 反饋
2. 介紹:C++ 和物件導向程式設計
- C++ 語言
- C++ 作為物件導向程式語言
- C++ 的其他概念
- 術語
3. C++ 程式的基本概念
- 第一個程式
- 類型、運算符和控制結構
- 函數和模組
- 字串
- 集合
- 異常處理
- 指標、陣列和 C 字串
- 使用 new 和 delete 的記憶體管理
- 與外部世界的通信
4. 類別程式設計
- 第一個類別:Fraction
- 類別的運算符
- 執行時間和代碼優化
- 參考和常數
- 使用流的輸入和輸出
- 友元和其他類型
- 類別的異常處理
5. 繼承和多型性
- 單一繼承
- 虛擬函數
- 多型性
- 多重繼承
- 繼承的設計陷阱
6. 動態和靜態成員
- 動態成員
- 動態成員的其他方面
- 具有動態成員的類別的繼承
- 包含類別的類別
- 靜態成員和輔助類型
7. 模板
- 為什麼使用模板?
- 函數模板
- 類模板
- 非類型模板參數
- 模板的其他方面
- 模板的實踐
8. 標準 I/O 函式庫詳解
- 標準流類別
- 檔案存取
- 字串的流類別
9. 其他語言特性和細節
- 標準函式庫的附加細節
- 定義特殊運算符
- new 和 delete 的其他方面
- 函數指標和成員指標
- 將 C++ 與 C 代碼結合
- 附加關鍵字
10. 總結
- C++ 運算符的層級
- 類別特定的操作屬性
- 自動類型轉換的規則
- 有用的程式設計指導和慣例
- 參考文獻
- 詞彙表
- 索引