C++编程思想(英文本)

C++编程思想(英文本)
作 者: Bruce Eckel
出版社: 机械工业出版社
丛编项: 经典原版书库
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: C++
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  作者:BruceEckelBruceEckel从1986年至今,已经发表了超过150篇计算机技术文章,出版了6本书(其中4本是关于C++的),并且在全世界做了数百次演讲。他是《ThinkinginJava》、《ThinkinginC++》、《C++Inside&Out》《UsingC++》和《ThinkinginPatterns》的作者,同时还是《BlackBeltC++》文集的编辑。他的《ThinkinginC++》一本书在1995年被评为“最佳软件开发图书”,《ThinkinginJava》被评为1999年JavaWorld“最爱读者欢迎图书”,并且赢得了编辑首选图书奖。C++编程思想第2卷:实用编程技术>>更多作品

内容简介

《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