Ivor Horton's Beginning C++: The Complete Language / Edition 2

Paperback (Print)
Used and New from Other Sellers
Used and New from Other Sellers
from $1.99
Usually ships in 1-2 business days
(Save 95%)
Other sellers (Paperback)
  • All (24) from $1.99   
  • New (1) from $58.77   
  • Used (23) from $1.99   
Sort by
Page 1 of 1
Showing All
Note: Marketplace items are not eligible for any BN.com coupons and promotions
Seller since 2008

Feedback rating:



New — never opened or used in original packaging.

Like New — packaging may have been opened. A "Like New" item is suitable to give as a gift.

Very Good — may have minor signs of wear on packaging but item works perfectly and has no damage.

Good — item is in good condition but packaging may have signs of shelf wear/aging or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Acceptable — item is in working order but may show signs of wear such as scratches or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Used — An item that has been opened and may show signs of wear. All specific defects should be noted in the Comments section associated with each item.

Refurbished — A used item that has been renewed or updated and verified to be in proper working condition. Not necessarily completed by the original manufacturer.


Ships from: Chicago, IL

Usually ships in 1-2 business days

  • Standard, 48 States
  • Standard (AK, HI)
Page 1 of 1
Showing All
Sort by


C++ is an object oriented programming language based on the original C. It is now the most popular 'professional' language to master and the language used to write most of the applications we all use today. ANSI ( American Standards Institute ) , or sometimes called ISO ( Int. Standards Org. ) C++ is the long awaited standard for the language itself. Over the next year, most of the companies that sell C++ compilers will have tuned their product to work, in the main, to this new standard. C++ code written before the standard will continue to work as before.The book covers all aspects of the language through to Objects and using the Standard Template Library. No knowledge of other programming languages is assumed, although exposure to some form of programming an advantage. Ivor teaches C++ as a first step to real programming, and helps a novice become a competent programmer. The explanations are thorough and leave no gray areas. This also makes the book useful for people with limited programming experience in another language who want a thorough grounding in C++. This book is not specific to any compiler or computer, making it a valuable learning tool regardless of whether you are using an old 486 with DOS, or the latest Sun SparcStation. It is an easy-going tutorial, based on a proven formula of step-by-step examples, friendly explanations and exercises.

Unlike the rest of the wimpy programming tutorials, this publication teaches you to write clean and solid C++ code. The author, Ivor Horton, doesn't just introduce and gloss over subjects, he covers them thoroughly. Although this introductory C++ tutorial covers programming basics, you should be somewhat familiar with programming concepts and object orientation.

Read More Show Less

Product Details

  • ISBN-13: 9781861000125
  • Publisher: Wrox Press, Inc.
  • Publication date: 12/28/1997
  • Series: Beginning Ser.
  • Edition description: 2ND
  • Edition number: 2
  • Pages: 950
  • Product dimensions: 7.19 (w) x 9.21 (h) x 2.07 (d)

Meet the Author

Ivor Horton, the best-selling author of Beginning Visual C++, Beginning C & Beginning Java, has brought computer programming to a wide and varied audience. Ivor is a firm believer that programming is often easier than it looks for novices, and he enjoys trying to make the subject more approachable for beginners. Ivor spend many years working for IBM, both programming and training others to program.
Read More Show Less

Read an Excerpt

Chapter 1: Basic Ideas

In this first chapter, I will introduce the general characteristics of C++. All the concepts presented here will be covered in more detail in later chapters - this is just to set the scene before we get into the specifics of writing C++ programs. We will see what a simple C++ program looks like and how it all hangs together. We'll also be looking at the broad concepts of programming in C++, and how you create an executable program from the source code files you'll be writing.

Don't try to memorize all the information in this chapter. Concentrate on getting a feel for the ideas involved. Everything that is mentioned will come up again in later chapters, and you will learn best by using it, not just reading about it. In this chapter you will find out about:

  • What the features of C++ are that make it so popular
  • What the elements of a basic C++ program are
  • How to document your program source code
  • How your source code becomes an executable program
  • How object-oriented programming differs from procedural programming

Programming Languages

You are probably familiar with the basic ideas of programming and programming languages, but to make sure we're on common ground, let's do a quick survey of some of the terms we'll be using as we progress through the book. We can also put C++ into perspective in relation to some of the other programming languages you'll have heard of.

Whatever the programming language, the programs you write are made up of separate instructions; these are referred to collectively as source code, and are stored on disk in a source file. There are lots of programming languages, each with their advantages and disadvantages, and their protagonists and detractors. Along with C++, other languages that you're likely to have come across include BASIC, COBOL, FORTRAN, Pascal and C.

FORTRAN, for example, is a language that's been around for nearly 40 years and is still used extensively for scientific and engineering calculations, although C++ and other languages have proded much of its usage. COBOL is a language exclusively for business data processing applications, and is almost as old as FORTRAN. While little new code is written in COBOL, there is an immense amount of code that was written years ago and is still in use. Again, C++ has become the language of choice for many business data processing programs.

C is the forerunner of C++, and because of this the two languages share a common set of syntax and functionality. In fact, the C programming language forms a subset of C++. However, the extensions and improvements that C++ provides have matured as the language has developed, and C++ is a richer and more versatile language than its ancestor, as we shall see.

Interpreted vs Compiled Program Execution

Programming languages are designed to make it relatively easy for you to describe the actions you want a computer to carry out, compared with the form of program that a computer can actually execute. Your computer can only execute programs that consist of machine instructions (also called machine code), so it can't execute your program directly There are basically two ways in which a program written in one of the languages I mentioned above can get executed, and for the most part, a particular language will choose one or the other. Programs written in BASIC, for example, are usually interpreted - that is, another program called an interpreter inspects the BASIC source code, figures out what it is supposed to do, and then causes that to be done.

C++, on the other hand, is a compiled language. Before you can execute your C++ program, it must be converted to machine language by another program, called a compiler. The compiler inspects the C++ program and generates the machine instructions that will produce the actions specified by the source code. Of course, in reality neither interpreting nor compiling are quite as simple as I have described them here, but in principle that's how they work.

With an interpreted language, execution is 'indirect', by which I mean the intent of the source code needs to be determined each time a program is executed. For this reason, it is much slower - sometimes of the order of a 100 times slower - than the equivalent program in a compiled language. A given language is usually either compiled or interpreted, and it's typically the design and intended use of the language that determines which.

Something of an exception to this rule is Java, a relatively new language that has many of the characteristics of C++. Because it is intended to be portable across different computers and used on the Internet, Java is essentially an interpreted language. Having said that, there are also justin-time compilers that will produce the machine code equivalent portions of the original Java source as machine code programs at execution time, and thereby greatly enhance the execution speed.


If you had to create everything from scratch every time you wrote a program, it would be tedious indeed. The same kind of functionality is often required in many programs - reading data from the keyboard, for example, or displaying information on the screen. To address this, programming languages tend to come supplied with considerable quantities of pre-written code that provides standard facilities such as these, so you don't have to write the code for them yourself.

Standard code intended for use in any program is kept in a library. The library that comes with a particular programming language is as important as the language itself, as the quality and scope of the library can have a significant effect on how long it will take you to complete a given programming task.

Why is C++ Such a Great Language?

C++ enjoys remarkable popularity across virtually all computing environments: personal computers, Unix workstations and mainframe computers. This is all the more remarkable when you consider the degree to which history weighs against a new programming language, no matter how good it is. The inertia implicit in the number of programs written in previous languages inevitably slows the acceptance of a new language. Added to this, there is always a tendency among most professional programmers to stick with what they know and in which they are expert and productive, rather than jump in at the deep end with something new and unfamiliar, in which it will take time to develop fluency Of course, the fact that C++ was built on C (which itself was the language of choice in many environments before the advent of C++) helped tremendously, but there's a great deal more to it than that. C++ provides you with a unique combination of advantages:

C++ is effective across an incredible range of applications. You can apply C++ to just about anything, from word processing to scientific applications, from operating system components to computer games.

C++ combines the facility for efficient procedural programming that it inherits from C, with a powerful object-oriented programming capability.

C++ provides extensive facilities in its standard library.

There are many commercial C++ libraries supporting a wide range of operating system environments and specialized applications. You will also find that just about any computer can be programmed in C++, so the language is pervasive across almost all computer platforms. This means that it should be possible to transfer a program written in C++ from one machine to another with relatively limited effort. Of course, if this is truly going to be a straightforward process, you need to have had in mind when you wrote the program that you intended to run it on a different machine.

The ANSI Standard for C++

Standardization is fundamental to transferring a program written for one type of computer to another. The establishment of a standard makes a consistent implementation of the language possible across a variety of machines. A full set of standard facilities across all conforming compilers means that you will always know exactly what you are going to get. Using ANSI standard C++ makes the migration of applications between different machines easier, and eases the problems of maintaining applications that run in more than one environment.

Of course, there are other things to consider. If your program is to be portable, you must not introduce facilities from non-standard libraries into your code, and you must take care to minimize the amount of dependency on the development machine that you build into the way the program works. To do otherwise may make migrating the code an uphill task.

Another benefit of ANSI standard C++ is that it standardizes what you need to learn in order to program in C++. The existence of the standard will itself force conformance over time, since it provides the only definitive reference for what a C++ compiler and library should provide. It removes the license to be 'flexible' that compiler writers have had in the absence of an agreed standard, so if you haven't already done so, insist on ANSI standard conformance when you buy your next C++ compiler....

Read More Show Less

Table of Contents

Chapter 1: Basic Ideas
Chapter 2: Basic Data Types and Calculations
Chapter 3: More on Handling Basic Data Types
Chapter 4: Choices and Decisions
Chapter 5: Loops
Chapter 6: Arrays and Strings
Chapter 7: Pointers
Chapter 8: Programming with Functions
Chapter 9: More on Functions
Chapter 10: Program Files and the Preprocessor
Chapter 11: Creating your own Data Types
Chapter 12: Classes
Chapter 13: Class Operations
Chapter 14: Operator Overloading
Chapter 15: Inheritance
Chapter 16: Virtual Functions and Polymorphism
Chapter 17: Program Errors and Exception Handling
Chapter 18: Class Templates
Chapter 19: Input and Output Operations
Chapter 20: Introducing the Standard Template Library
Appendix A: ASCII Codes
Appendix B: C++ Keywords
Appendix C: Standard Library Header Files
Appendix D: Operator Precedence and Associativity
Appendix E: Database Project
Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 4 Customer Reviews
  • Anonymous

    Posted August 27, 2002

    Explains Greatly

    Explains everything thoroughly, awesome execution, if you find the Bitwise operators frustating, dont worry, and search for some tutorials on converting Decimal <-> Hex. Also the scientific windows calculator will automatically convert.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted September 22, 2001

    C++ Beginner Turned Self-Taught Master

    If you are lost in the world of C++, or programming in general, purchase this book! Mr. Horton's detailed analysis of the language and the nature of programming is simple and easy to understand, yet complex and all-encompassing. When I began my 500 level university Object Oriented C++ course, I had never seen the language before. The class text provided was a joke, and the only way I survived was by reading and enjoying Horton's incredible book. This is NOT jus a reference, it's a lifesaver. If you want to feel comfortable writing your own successful programs in C++, this book is most definitely for you.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted February 13, 2001

    Nice Supplement to any C++ Text Book

    Taking an introductory C++ at a local University. Found the required text to be extremely poor and hard to read. Bought Ivor's book and have been using it way more than the course text. It explains concepts by example, and very relavant examples at that. The topic of each chapter is broken down into smaller topics, each with it's own detailed explanation and most with their own example. The sample source code is plentyful too. This book is a keeper unlike the textbook for my class.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted August 27, 2000

    good book

    This is a great book it explains everything in plain english and makes learning C++ fun and exciting. So if your trying to decide which book you should get to learn c++ this one is it.

    Was this review helpful? Yes  No   Report this review
Sort by: Showing all of 4 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)