Humburger Icon
Let's Explore, Bibiliophile
close menu
Bookswagon-24x7 online bookstore
close menu
My Account
22%
Programming: Principles and Practice Using C++(Developer's Library )

Programming: Principles and Practice Using C++(Developer's Library )

          
5
4
3
2
1

Out of Stock


Premium quality
Premium quality
Bookswagon upholds the quality by delivering untarnished books. Quality, services and satisfaction are everything for us!
Easy Return
Easy return
Not satisfied with this product! Keep it in original condition and packaging to avail easy return policy.
Certified product
Certified product
First impression is the last impression! Address the book’s certification page, ISBN, publisher’s name, copyright page and print quality.
Secure Checkout
Secure checkout
Security at its finest! Login, browse, purchase and pay, every step is safe and secured.
Money back guarantee
Money-back guarantee:
It’s all about customers! For any kind of bad experience with the product, get your actual amount back after returning the product.
On time delivery
On-time delivery
At your doorstep on time! Get this book delivered without any delay.
Notify me when this book is in stock
Add to Wishlist

About the Book

An Introduction to Programming by the Inventor of C++

 

Preparation for Programming in the Real World

 

The book assumes that you aim eventually to write non-trivial programs, whether for work in software development or in some other technical field.

 

Focus on Fundamental Concepts and Techniques

 

The book explains fundamental concepts and techniques in greater depth than traditional introductions. This approach will give you a solid foundation for writing useful, correct, maintainable, and efficient code.

 

Programming with Today’s C++

 

The book is an introduction to programming in general, including object-oriented programming and generic programming. It is also a solid introduction to the C++ programming language, one of the most widely used languages for real-world software. The book presents modern C++ programming techniques from the start, introducing the C++ standard library to simplify programming tasks.

 

For Beginners–And Anyone Who Wants to Learn Something New

 

The book is primarily designed for people who have never programmed before, and it has been tested with more than 1,000 first-year university students. However, practitioners and advanced students will gain new insight and guidance by seeing how a recognized master approaches the elements of his art.

 

Provides a Broad View

 

The first half of the book covers a wide range of essential concepts, design and programming techniques, language features, and libraries. Those will enable you to write programs involving input, output, computation, and simple graphics. The second half explores more specialized topics, such as text processing and testing, and provides abundant reference material. Source code and support supplements are available from the author’s website.

 



Table of Contents:

Preface xxiii

 

Chapter 0: Notes to the Reader 1

0.1 The structure of this book 2

0.2 A philosophy of teaching and learning 6

0.3 Programming and computer science 12

0.4 Creativity and problem solving 12

0.5 Request for feedback 12

0.6 References 13

0.7 Biographies 14

 

Chapter 1: Computers, People, and Programming 17

1.1 Introduction 18

1.2 Software 19

1.3 People 21

1.4 Computer science 24

1.5 Computers are everywhere 25

1.6 Ideals for programmers 34

 

Part I: The Basics 41

 

Chapter 2: Hello,World! 43

2.1 Programs 44

2.2 The classic first program 45

2.3 Compilation 47

2.4 Linking 51

2.5 Programming environments 52

 

Chapter 3: Objects, Types, and Values 59

3.1 Input 60

3.2 Variables 62

3.3 Input and type 64

3.4 Operations and operators 66

3.5 Assignment and initialization 69

3.6 Composite assignment operators 73

3.7 Names 74

3.8 Types and objects 77

3.9 Type safety 78

 

Chapter 4: Computation 89

4.1 Computation 90

4.2 Objectives and tools 92

4.3 Expressions 94

4.4 Statements 99

4.5 Functions 112

4.6 Vector 116

4.7 Language features 123

 

Chapter 5: Errors 131

5.1 Introduction 132

5.2 Sources of errors 134

5.3 Compile-time errors 134

5.4 Link-time errors 137

5.5 Run-time errors 138

5.6 Exceptions 144

5.7 Logic errors 152

5.8 Estimation 155

5.9 Debugging 156

5.10 Pre- and post-conditions 161

5.11 Testing 164

 

Chapter 6: Writing a Program 171

6.1 A problem 172

6.2 Thinking about the problem 173

6.3 Back to the calculator! 176

6.4 Grammars 186

6.5 Turning a grammar into code 193

6.6 Trying the first version 201

6.7 Trying the second version 206

6.8 Token streams 207

6.9 Program structure 213

 

Chapter 7: Completing a Program 219

7.1 Introduction 220

7.2 Input and output 220

7.3 Error handling 222

7.4 Negative numbers 227

7.5 Remainder: % 228

7.6 Cleaning up the code 231

7.7 Recovering from errors 238

7.8 Variables 241

 

Chapter 8: Technicalities: Functions, etc. 253

8.1 Technicalities 254

8.2 Declarations and definitions 255

8.3 Header files 261

8.4 Scope 264

8.5 Function call and return 269

8.6 Order of evaluation 287

8.7 Namespaces 290

 

Chapter 9: Technicalities: Classes, etc. 299

9.1 User-defined types 300

9.2 Classes and members 301

9.3 Interface and implementation 302

9.4 Evolving a class 304

9.5 Enumerations 314

9.6 Operator overloading 316

9.7 Class interfaces 318

9.8 The Date class 328

 

Part II: Input and Output 337

 

Chapter 10: Input and Output Streams 339

10.1 Input and output 340

10.2 The I/O stream model 341

10.3 Files 343

10.4 Opening a file 344

10.5 Reading and writing a file 346

10.6 I/O error handling 348

10.7 Reading a single value 352

10.8 User-defined output operators 357

10.9 User-defined input operators 359

10.10 A standard input loop 359

10.11 Reading a structured file 361

 

Chapter 11: Customizing Input and Output 375

11.1 Regularity and irregularity 376

11.2 Output formatting 376

11.3 File opening and positioning 384

11.4 String streams 390

11.5 Line-oriented input 391

11.6 Character classification 392

11.7 Using nonstandard separators 394

11.8 And there is so much more 401

 

Chapter 12: A Display Model 407

12.1 Why graphics? 408

12.2 A display model 409

12.3 A first example 410

12.4 Using a GUI library 414

12.5 Coordinates 415

12.6 Shapes 416

12.7 Using Shape primitives 417

12.8 Getting this to run 431

 

Chapter 13: Graphics Classes 437

13.1 Overview of graphics classes 438

13.2 Point and Line 440

13.3 Lines 443

13.4 Color 445

13.5 Line_style 448

13.6 Open_polyline 450

13.7 Closed_polyline 451

13.8 Polygon 453

13.9 Rectangle 455

13.10 Managing unnamed objects 459

13.11 Text 462

13.12 Circle 464

13.13 Ellipse 466

13.14 Marked_polyline 468

13.15 Marks 469

13.16 Mark 470

13.17 Images 472

 

Chapter 14: Graphics Class Design 479

14.1 Design principles 480

14.2 Shape 485

14.3 Base and derived classes 496

14.4 Benefits of object-oriented programming 504

 

Chapter 15: Graphing Functions and Data 509

15.1 Introduction 510

15.2 Graphing simple functions 510

15.3 Function 514

15.4 Axis 518

15.5 Approximation 521

15.6 Graphing data 526

 

Chapter 16: Graphical User Interfaces 539

16.1 User interface alternatives 540

16.2 The “Next” button 541

16.3 A simple window 542

16.4 Button and other Widgets 548

16.5 An example 552

16.6 Control inversion 556

16.7 Adding a menu 557

16.8 Debugging GUI code 562

 

Part III: Data and Algorithms 567

 

Chapter 17: Vector and Free Store 569

17.1 Introduction 570

17.2 vector basics 572

17.3 Memory, addresses, and pointers 574

17.4 Free store and pointers 577

17.5 Destructors 586

17.6 Access to elements 590

17.7 Pointers to class objects 591

17.8 Messing with types: void* and casts 593

17.9 Pointers and references 595

17.10 The this pointer 603

 

Chapter 18: Vectors and Arrays 611

18.1 Introduction 612

18.2 Copying 613

18.3 Essential operations 620

18.4 Access to vector elements 625

18.5 Arrays 627

18.6 Examples: palindrome 637

 

Chapter 19: Vector, Templates, and Exceptions 645

19.1 The problems 646

19.2 Changing size 649

19.3 Templates 656

19.4 Range checking and exceptions 668

19.5 Resources and exceptions 672

 

Chapter 20: Containers and Iterators 685

20.1 Storing and processing data 686

20.2 STL ideals 690

20.3 Sequences and iterators 694

20.4 Linked lists 698

20.5 Generalizing vector yet again 703

20.6 An example: a simple text editor 704

20.7 vector, list, and string 711

20.8 Adapting our vector to the STL 715

20.9 Adapting built-in arrays to the STL 718

20.10 Container overview 719

 

Chapter 21: Algorithms and Maps 727

21.1 Standard library algorithms 728

21.2 The simplest algorithm: find() 729

21.3 The general search: find_if() 732

21.4 Function objects 734

21.5 Numerical algorithms 738

21.6 Associative containers 744

21.7 Copying 757

21.8 Sorting and searching 762

 

Part IV: Broadening the View 769

 

Chapter 22: Ideals and History 771

22.1 History, ideals, and professionalism 772

22.2 Programming language history overview 783

 

Chapter 23: Text Manipulation 813

23.1 Text 814

23.2 Strings 814

23.3 I/O streams 819

23.4 Maps 820

23.5 A problem 828

23.6 The idea of regular expressions 830

23.7 Searching with regular expressions 833

23.8 Regular expression syntax 836

23.9 Matching with regular expressions 844

23.10 References 849

 

Chapter 24: Numerics 853

24.1 Introduction 854

24.2 Size, precision, and overflow 854

24.3 Arrays 859

24.4 C-style multidimensional arrays 859

24.5 The Matrix library 861

24.6 An example: solving linear equations 872

24.7 Random numbers 877

24.8 The standard mathematical functions 879

24.9 Complex numbers 880

24.10 References 882

 

Chapter 25: Embedded Systems Programming 887

25.1 Embedded systems 888

25.2 Basic concepts 891

25.3 Memory management 897

25.4 Addresses, pointers, and arrays 905

25.5 Bits, bytes, and words 916

25.6 Coding standards 935

 

Chapter 26: Testing 949

26.1 What we want 950

26.2 Proofs 952

26.3 Testing 952

26.4 Design for testing 978

26.5 Debugging 979

26.6 Performance 979

26.7 References 983

 

Chapter 27: The C Programming Language 987

27.1 C and C++: siblings 988

27.2 Functions 994

27.3 Minor language differences 1002

27.4 Free store 1009

27.5 C-style strings 1011

27.6 Input/output: stdio 1016

27.7 Constants and macros 1020

27.8 Macros 1021

27.9 An example: intrusive containers 1025

 

Part V: Appendices 1035

 

Appendix A: Language Summary 1037

A.1 General 1038

A.2 Literals 1041

A.3 Identifiers 1045

A.4 Scope, storage class, and lifetime 1046

A.5 Expressions 1049

A.6 Statements 1059

A.7 Declarations 1061

A.8 Built-in types 1062

A.9 Functions 1066

A.10 User-defined types 1069

A.11 Enumerations 1070

A.12 Classes 1071

A.13 Templates 1083

A.14 Exceptions 1086

A.15 Namespaces 1088

A.16 Aliases 1089

A.17 Preprocessor directives 1090

 

Appendix B: Standard Library Summary 1093

B.1 Overview 1094

B.3 Iterators 1100

B.4 Containers 1105

B.5 Algorithms 1112

B.6 STL utilities 1121

B.7 I/O streams 1124

B.8 String manipulation 1131

B.9 Numerics 1135

B.10 C standard library functions 1140

B.11 Other libraries 1150

 

Appendix C: Getting Started with Visual Studio 1151

C.1 Getting a program to run 1152

C.2 Installing Visual Studio 1152

C.3 Creating and running a program 1153

C.4 Later 1155

 

Appendix D: Installing FLTK 1157

D.1 Introduction 1158

D.2 Downloading FLTK 1158

D.3 Installing FLTK 1159

D.4 Using FLTK in Visual Studio 1159

D.5 Testing if it all worked 1160

 

Appendix E: GUI Implementation 1161

E.1 Callback implementation 1162

E.2 Widget implementation 1163

E.3 Window implementation 1164

E.4 Vector_ref 1166

E.5 An example: manipulating Widgets 1167

 

Glossary 1171

Bibliography 1177

Index 1181


Best Seller

| | See All

Product Details
  • ISBN-13: 9780321543721
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Addison-Wesley Educational Publishers Inc
  • Depth: 51
  • Height: 234 mm
  • No of Pages: 1272
  • Spine Width: 40 mm
  • Weight: 1640 gr
  • ISBN-10: 0321543726
  • Publisher Date: 19 Dec 2008
  • Binding: Paperback
  • Edition: 1
  • Language: English
  • Series Title: Developer's Library
  • Sub Title: Principles and Practice Using C++
  • Width: 187 mm


Similar Products

How would you rate your experience shopping for books on Bookswagon?

Add Photo
Add Photo

Customer Reviews

REVIEWS           
Be The First to Review
Programming: Principles and Practice Using C++(Developer's Library )
Pearson Education (US) -
Programming: Principles and Practice Using C++(Developer's Library )
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Programming: Principles and Practice Using C++(Developer's Library )

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book
    Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals

    | | See All


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!
    ASK VIDYA