C++编程思想(英文版.第2版)
作者 : Bruce Eckel
丛书名 : 经典原版书库
出版日期 : 2002-01-01
ISBN : 7-111-09162-0
定价 : 58.00元
教辅资源下载
扩展信息
语种 : 英文
页数 : 828
开本 : 16开
原书名 : Thinking in C++, Vol.1: Introduction to Standard C++
原出版社: Prentice Hall
属性分类: 教材
包含CD :
绝版 :
图书简介

This book is a thorough rewrite of the first edition to reflect all of the changes introduced in C++ by the finalization of the C++ Standard, and also to reflect what I've learned since writing the first edition. The entire text present in the first edition has been examined and rewritten, sometimes removing old examples, often changing existing examples and adding new ones, and adding many new exercises. Significant rearrangement and re-ordering of the material took place to reflect the availability of better tools and my improved understanding of how people learn C++. A new chapter was added which is a rapid introduction to the C concepts and basic C++ features for those who don't have the C background to tackle the rest of the book. The CD ROM bound into the back of the book contains a seminar that is an even gentler introduction to the C concepts necessary to understand C++ (or Java). It was created by Chuck Allison for my company (Mind View, Inc.), and it's called "Thinking in C: Foundations for Java and C++." It introduces you to the aspects of C that are necessary for you to move on to C++ or Java, leaving out the nasty bits that C programmers must deal with on a day-to-day basis but that the C++ and Java languages steer you away from (or even eliminate, in the case of Java).

作者简介

Bruce Eckel:Bruce Eckel:  Bruce Eckel 是MindView公司 (www.MindView.net) 的总裁,向客户提供软件咨询和培训。他是C++标准委员会拥有表决权的成员之一。他也是《Java编程思想》(该书第3版影印版及翻译版已由机械工业出版社引进出版)、《C++编程思想 第1卷》及其他C++著作的作者,已经发表了150多篇论文 (其中有许多C++语言方面的论文) ,他经常参加世界各地的研讨会并进行演讲。

图书目录

What's inside...
Preface
What's new in the second edition
Prerequisites
Learning C++
Goals
Chapters
Exercises
Source code
Language standards
The book's CD ROM
CD ROMs, seminars and consulting
Errors
About the cover
Book design and production
Acknowledgements
1: Introduction to
Objects
The progress of abstraction
An object has an interface
The hidden implementation
Reusing the implementation
Inheritance: reusing the interface
Interchangeable
objects with polymorphism
Creating and destroying objects
Exception handling:dealing with errors
Analysis and design
Extreme programming
Why C++
Succeeds
Strategies for transition
Summary
2: Making & Using
Dbjects
The process of fanguage transtation
Tools for separate compilation
Your first C++ program
More about iostreams
Introducing strings
Reading and writing files
Introducing vector
Summary
Exercises
3: The C in C++
Creating functions
Controlling execution
Introduction to operators
Introduction to data types
Scoping
Specifying storage allocation
Operators and their use
Composite type creation
Debugging hints
Function addresses
Make:managing separate compilation
Summary
Exercises
4: Data Abstraction
A tiny C-like library
What's wrong
The basic object
What's an object
Abstract data typing
Object details
Header file etiquette
Nested structures
Summary
Exercises
5: Hiding the
Implementation
Setting limits
C++ access control
Friends
Object layout
The class
Handle classes
Summary
Exercises
6: Initialization &
Cleanup
Guaranteed
InitiaIization with the constructor
Guaranteed cleanup with the destructor
Elimination of the definition block
Stash with constructors and destructors
Stack with constructors & destructors
Aggregate initialization
Default constructors
Summary
Exercises
7: Function Overloading & Default
Arguments
More name decoration
Overloading example unions
Default arguments
Choosing overloading vs. default arguments
Summary
Exercises
8: Constants
Value substitution
Pointers
Function arguments & return values
Classes volatife
Summary
Exercises
9: Inline Functions
Preprocessor pitfalls
Inline functions
Stash & Stack with inlines
Inlines & the compiler
Reducing clutter
More preprocessor features
Improved error checking
Summary
Exercises
10: Name Control
Static elements from C
Namespaces
Static members in C++
Static initialization dependency
Alternate linkage specifications
Summary
Exercises
11:References & the Copy-Constructor
Pointers in C++
References in C++
The copy-constructor
Pointers to members
Summary
Exercises
12: Operator
Overloading
Warning & reassurance
Syntax
Overloadable operators
Non-member operators
Overloading assignment
Automatic type conversion
Summary
Exercises
13: Dynamic
Object Creation
Object creation
Early examples redesigned new & delete for arrays
Running out of storage
Overloading new & delete
Summary
Exercises
14: Inheritance & Composition
Composition syntax
Inheritance syntax
The constructor initializer list
Combining composition & inheritance
Name hiding
Functions that don't automatically inherit
Choosing composition vs. inheritance protected
Operator overloading & inheritance
Multiple inheritance
Incremental development
Upcasting
Summary
Exercises
15: Polymorphism & Virtual Functions
Evolution of C++ programmers
Upcasting
The problem virtual functions
How C++ implements late binding
Why virtual functions
Abatract base classes and pure virtual functions
Inheritance and the VTABLE
Overloading & overriding virtual functions & constructors
Destructors and virtual destructors
Operator overloading
Downcastion
Summary
Exercises
16:Introduction to
Templates
Containers
Overview of templates
Template syntax
Stack and Stash as templates
Turning ownership on and off
Holdinq objects by value
Introducing iterators
Why iterators
Summary
Exercises
Coding Style
Programming lidelines
Recommended ading
C
General C+ +
Depth & dark corners
Analysis & design
Index


教学资源推荐
作者: [美] 凯·霍斯特曼(Cay Horstmann) 兰斯·尼塞斯(Rance Necaise) 著
作者: 施霞萍 王瑾德 史建成 马可幸 张欢欢 编著
作者: [美] 克里斯多夫 W. 弗雷泽(Christopher W. Fraser)戴维 R. 汉森(David R. Hanson) 著
作者: Harvey M.Deitel,Paul J.Deitel
参考读物推荐
作者: 袁林 编著
作者: 张路斌 著
作者: (美)John Mongan,Noan Suojanen
作者: 刘振安 刘燕君 编著