书籍详情
C++编程思想(英文本)
作者:(美)Bruce Eckel著
出版社:机械工业出版社
出版时间:2002-01-01
ISBN:9787111091622
定价:¥58.00
购买这本书可以去
内容简介
《C++编程思想》(英文版第2版)是丛书中的一本,丛书不仅涵盖了程序设计、数据结构、操作系统、计算机体系结构、数据库、编译原理、软件工程、图形学、通信与网络、离散数学等国内大学计算机专业普遍开设的核心课程,而且各具特色:有的出自语言设计者之手、有的历三十年而不衰、有的已被全世界的几百所高校采用。在这些圆熟通博的名师大作的指引之下,读者必将在计算机科学的宫殿中由登堂而入室。
作者简介
作者:BruceEckelBruceEckel从1986年至今,已经发表了超过150篇计算机技术文章,出版了6本书(其中4本是关于C++的),并且在全世界做了数百次演讲。他是《ThinkinginJava》、《ThinkinginC++》、《C++Inside&Out》《UsingC++》和《ThinkinginPatterns》的作者,同时还是《BlackBeltC++》文集的编辑。他的《ThinkinginC++》一本书在1995年被评为“最佳软件开发图书”,《ThinkinginJava》被评为1999年JavaWorld“最爱读者欢迎图书”,并且赢得了编辑首选图书奖。C++编程思想第2卷:实用编程技术>>更多作品
目录
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
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
猜您喜欢