Master your Minecraft
 
 

Special Offers see all

Enter to WIN a $100 Credit

Subscribe to PowellsBooks.news
for a chance to win.
Privacy Policy

Tour our stores


    Recently Viewed clear list


    What I'm Giving | December 3, 2014

    Mary Oliver: IMG Mary Oliver: What I'm Giving



    At Powell's, we feel the holidays are the perfect time to share our love of books with those close to us. For this special blog series, we reached... Continue »

    spacer
Qualifying orders ship free.
$6.95
Used Trade Paper
Ships in 1 to 3 days
Add to Wishlist
Qty Store Section
1 Burnside Computer Languages- C++

More copies of this ISBN

C++ Programming Style (Addison-Wesley Professional Computing)

by

C++ Programming Style (Addison-Wesley Professional Computing) Cover

ISBN13: 9780201563658
ISBN10: 0201563657
Condition: Standard
All Product Details

Only 1 left in stock at $6.95!

 

Synopses & Reviews

Publisher Comments:

C++ supports programming-in-the-large, allowing relationships between different parts of a program to be expressed. The scope of C++ programming style therefore goes beyond traditional in-the-small issues which relate to the details of line-by-line coding. This book examines the use of the in-the-large language features of C++, which sometimes confuse even experienced programmers. The author demonstrates that unwarranted use of the more powerful language features may lead to cluttered programs which are harder to comprehend and sometimes less efficient than more straightforward alternatives. Cargill rewrites several programs, using techniques that range from improving consistency to removing redundant inheritance. The presentation simulates a code review, in which readers may independently evaluate and criticize alternative approaches to programming problems, and then compare their analyses with those of the author.

Design and coding style rules are distilled from the examples. Understanding and following these rules will help professional programmers design and write better C++ programs.

A chapter is devoted to each of the following topics:

  • abstractions
  • operator overloading
  • consistency
  • wrappers
  • unnecessary inheritance
  • efficiency
  • virtual functions
Building on the programming rules introduced in the first seven chapters, Cargill presents a case study in which a single program undergoes repeated transformations that improve its overall quality while reducing its size. The book concludes with a chapter on multiple inheritance.

0201563657B04062001

Synopsis:

A chapter is devoted to each of the following topics: abstractions; operator overloading; consistency; wrappers; unnecessary inheritance; efficiency; and virtual functions. Building on the programming rules introduced in the first seven chapters, Cargill presents a case study in which a single program undergoes repeated transformations that improve its overall quality while reducing its size. The book concludes with a chapter on multiple inheritance. 0201563657B04062001

About the Author

Tom Cargill is a well-regarded expert in C++. While at AT&T Bell Laboratories, Murray Hill, NJ, he was among the first programmers to use C++. He is a columnist for The C++ Journal and The C++ Report, and is also the author of two of Technology Exchange Company's C++ courses. The material for this book was originally developed for tutorials that Cargill has presented at numerous technical conference.

0201563657AB04062001

Table of Contents

Preface.

Introduction.

Bibliographic Notes.

1. Abstraction.

Style Example: Pricing Computers.

Finding a Common Abstraction.

Differences Between Classes.

Reintroducing Inheritance.

Removing the Enumerations.

Summary.

Bibliographic Notes.

Exercise.

2. Consistency.

Style Example: Class string.

Well-defined State.

Consistent Physical State.

Class Invariants.

Consistent Use of Dynamic Memory.

Deallocating Dynamic Memory.

Style Example: A Second Approach.

Summary.

Bibliographic Notes.

Exercises.

3. Unnecessary Inheritance.

Style Example: Stacks.

Inheritance Scope Rules.

Inheritance Relationships.

Encapsulation.

Interface versus Implementation.

Templates.

Summary.

Bibliographic Notes.

Exercise.

4. Virtual Functions.

Style Example: Vehicles and Garages.

Consistency.

Base Destructors.

Inheritance.

Coupling.

Summary.

Bibliographic Notes.

Exercise.

5. Operator Overloading.

Operator Overloading Basics.

Style Example: Class FileArray.

Inheritance for Implementation.

A Programming Tradeoff: Overloaded Operators versus Member Functions.

Summary.

Bibliographic Notes.

Exercises.

6. Wrappers.

A C Library.

Style Example: A C++ Wrapper for dirent.

Multiple Directory Objects.

Constructor Failure.

Public Access to Failure State.

Error Condition Argument.

Summary.

Bibliographic Notes.

Exercise.

7. Efficiency.

Style Example: Class BigInt.

Exercising BigInt.

The Length of Dynamic Strings.

The Number of Dynamic Strings.

The Client Code.

Rewriting BigInt.

Summary.

Bibliographic Notes.

Exercises.

8. A Case Study.

Style Example: Finite State Machines.

Initialization.

Coupling.

Cohesion.

Modules versus Abstract Data Types.

Generalization.

Bibliographic Notes.

Exercises.

9. Multiple Inheritance.

Ambiguities under Multiple Inheritance.

Directed Acyclic Inheritance Graphs.

Exploring Virtual Base Classes.

Style Example: Class Monitor.

Style Example: A Virtual Base Class.

Multiple Protocol Inheritance.

Summary.

Bibliographic Notes.

Exercises.

10. Summary of Rules.

Index. 0201563657T04062001

What Our Readers Are Saying

Add a comment for a chance to win!
Average customer rating based on 1 comment:

umair_tariq007, March 21, 2007 (view all comments by umair_tariq007)
learning is life
Was this comment helpful? | Yes | No
(1 of 3 readers found this comment helpful)

Product Details

ISBN:
9780201563658
Author:
Cargill, Tom
Publisher:
Addison-Wesley Professional
Location:
Reading, Mass. :
Subject:
Programming Languages - C
Subject:
Programming Languages - General
Subject:
C (computer program language)
Subject:
Technology
Subject:
Computers and computer technology
Subject:
C plus plus (computer program language)
Subject:
Language, literature and biography
Subject:
C
Subject:
Computer Languages-C++
Copyright:
Edition Description:
Trade paper
Series:
Addison-Wesley professional computing series
Series Volume:
1086
Publication Date:
June 1992
Binding:
TRADE PAPER
Grade Level:
Professional and scholarly
Language:
English
Illustrations:
Yes
Pages:
248
Dimensions:
9 x 7.3 x 0.6 in 417 gr

Other books you might like

  1. Ruminations on C++: A Decade of... New Trade Paper $40.25
  2. C++ Strategies and Tactics... Used Trade Paper $4.95
  3. Double Trouble in Walla Walla Used Trade Paper $2.50
  4. Napoleon's Grande Armée of 1813 Used Hardcover $27.50
  5. The Virtue of Prosperity: Finding... Used Trade Paper $2.25
  6. The Truth about Dogs: An Inquiry... Used Hardcover $8.50

Related Subjects

Computers and Internet » Computer Languages » C++

C++ Programming Style (Addison-Wesley Professional Computing) Used Trade Paper
0 stars - 0 reviews
$6.95 In Stock
Product details 248 pages Addison-Wesley Professional - English 9780201563658 Reviews:
"Synopsis" by , A chapter is devoted to each of the following topics: abstractions; operator overloading; consistency; wrappers; unnecessary inheritance; efficiency; and virtual functions. Building on the programming rules introduced in the first seven chapters, Cargill presents a case study in which a single program undergoes repeated transformations that improve its overall quality while reducing its size. The book concludes with a chapter on multiple inheritance. 0201563657B04062001
spacer
spacer
  • back to top

FOLLOW US ON...

     
Powell's City of Books is an independent bookstore in Portland, Oregon, that fills a whole city block with more than a million new, used, and out of print books. Shop those shelves — plus literally millions more books, DVDs, and gifts — here at Powells.com.