Programming in C++, 2/e

The revised and updated version of the student-friendly, practical and example-driven book, Programming in C++, continues to give its readers a solid background and a learning platform to the fundamentals of C++. This comprehensive book, enriched with illustrations and a number of solved programs, w...

Descripción completa

Detalles Bibliográficos
Autor principal: Kamthane, Ashok (-)
Formato: Libro electrónico
Idioma:Inglés
Publicado: Delhi : Pearson India 2012.
Edición:2nd ed
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009815724006719
Tabla de Contenidos:
  • Cover
  • Brief Contents
  • Contents
  • Preface
  • About the Author
  • Chapter 1 : Introduction to C++
  • 1.1 Differences between C and C++
  • 1.2 Evolution of C++
  • 1.3 The ANSI Standard
  • 1.4 The Object Oriented Technology
  • 1.5 Disadvantage of Conventional Programming
  • 1.6 Programming Paradigms
  • (1) Monolithic Programming
  • (2) Procedural/Structured Programming
  • 1.7 Preface to Object Oriented Programming
  • 1.8 Key Concepts of Object Oriented Programming
  • (1) Objects
  • (2) Classes
  • (3) Method
  • (4) Data Abstraction
  • (5) Encapsulation
  • (6) Inheritance
  • (7) Polymorphism
  • (8) Dynamic Binding
  • (9) Message passing
  • (10) Reusability
  • (11) Delegation
  • (12) Genericity
  • 1.9 Advantages of OOP
  • 1.10 Object Oriented Languages
  • SMALTALK
  • CHARM++
  • JAVA
  • 1.11 Usage of OOP
  • 1.12 Usage of C++
  • Summary
  • Exercises
  • Chapter 2 : Basics of C++
  • 2.1 Introduction
  • 2.2 Steps to Create and Execute a C++ Program
  • 2.3 Flowchart for Creating a Source File, Compiling, Linking and Executing in C++
  • 2.4 C++ Environments
  • 2.5 Typical C++ Environment (Borland C++)
  • Step 1: Open any Text Editor
  • Step 2: Write the Code for the Program
  • Step 3: Save the File with .CPP AS an Extension
  • Step 4: Compile the Program
  • Step 5: Run the Program
  • 2.6 Structure of a C++ Program
  • 2.7 Illustrative Simple Program in C++ without Class
  • 2.8 Header Files and Libraries
  • Summary
  • Exercises
  • Chapter 3 : Input and Output in C++
  • 3.1 Introduction
  • 3.2 Streams in C++ and Stream Classes
  • 3.3 Pre-defined Streams
  • 3.4 Buffering
  • 3.5 Stream Classes
  • 3.6 Formatted and Unformatted Data
  • 3.7 Unformatted Console I/O Operations
  • Input and Output Streams
  • 3.8 Type Casting with the cout Statement
  • 3.9 Member Functions of the istream Class
  • 3.10 Formatted Console I/O Operations
  • 3.11 Bit Fields.
  • 3.12 Flags without Bit Fields
  • 3.13 Manipulators
  • 3.14 User-defined Manipulators
  • 3.15 Manipulator with One Parameter
  • 3.16 Manipulators with Multiple Parameters
  • 3.17 More Programs
  • Summary
  • Exercises
  • Chapter 4 : C++ Declarations
  • 4.1 Introduction
  • 4.2 Tokens
  • 4.2.1 Keywords
  • 4.2.2 Identifiers
  • 4.2.3 Constants
  • 4.2.4 Operators
  • 4.2.5 String Constants
  • 4.3 Variable Declaration and Initialization
  • 4.3.1 Variable
  • 4.3.2 Variable Declaration
  • 4.3.3 Initialization
  • 4.3.4 Dynamic Initialization
  • 4.4 Data Types in C++
  • 4.4.1 Basic Data Type
  • 4.4.2 Derived Data Type
  • 4.4.3 User-Defined Data Type
  • 4.5 Operators in C and C++
  • 4.5.1 Precedence of Operators in C++
  • 4.5.2 Precedence of * and [ ] Operators
  • 4.6 Scope Access Operator
  • 4.7 Namespace
  • 4.8 Memory Management Operators
  • 4.8.1 new Operator
  • 4.8.2 delete Operator
  • 4.8.3 sizeof()
  • 4.9 Comments
  • 4.10 Comma Operator
  • 4.11 Comma in Place of Curly Braces
  • 4.12 More Programs
  • Summary
  • Exercises
  • Chapter 5 : Decision Statements
  • 5.1 Introduction
  • 5.2 The if Statement
  • 5.3 Multiple ifs
  • 5.4 The if-else Statement
  • 5.5 Nested if-else Statements
  • 5.6 The else-if Ladder
  • 5.7 Unconditional Control Transfer Statements
  • 5.7.1 The goto statement
  • 5.7.2 The break Statement
  • 5.7.3 The continue Statement
  • 5.8 The switch Statement
  • 5.9 Nested switch case
  • Summary
  • Exercises
  • Chapter 6 : Control Loop Structures
  • 6.1 Introduction
  • 6.2 What is a Loop?
  • 6.3 The for Loop
  • 6.4 Nested for Loops
  • 6.5 The while Loop
  • 6.6 The do-while Loop
  • 6.7 The do-while Statement with while Loop
  • 6.8 More Programs
  • Summary
  • Exercises
  • Chapter 7 : Functions in C++
  • 7.1 Introduction
  • 7.2 Parts of a Function
  • 7.2.1 Function Prototype Declaration
  • 7.2.2 Function Call
  • 7.2.3 Function Definition.
  • 7.3 Passing Arguments
  • 7.3.1 Call by Value
  • 7.3.2 Call by Address
  • 7.3.3 Call by Reference
  • 7.4 Lvalues and Rvalues
  • 7.4.1 Lvalues (Left Values)
  • 7.4.2 Rvalues (Right Values)
  • 7.5 Return by Reference
  • 7.6 Returning More Values by Reference
  • 7.7 Default Arguments
  • 7.8 const Arguments
  • 7.9 Inputting Default Arguments
  • 7.10 Inline Functions
  • 7.11 Function Overloading
  • 7.12 Principles of Function Overloading
  • 7.13 Precautions with Function Overloading
  • 7.14 Recursion
  • 7.14.1 Rules for Recursive Function
  • 7.15 Library Functions
  • 7.15.1 Ceil, ceill and floor, floorl
  • 7.15.2 modf and modfI
  • 7.15.3 abs, fabs, and labs
  • 7.15.4 norm
  • 7.15.5 complex(), real(), imag(), and conj()
  • 7.16 More Programs
  • Summary
  • Exercises
  • Chapter 8 : Classes and Objects
  • 8.1 Introduction
  • 8.2 Structure in C
  • 8.3 Structure in C++
  • 8.4 Classes in C++
  • 8.5 Declaring Objects
  • 8.6 The public Keyword
  • 8.7 The private Keyword
  • 8.8 The protected Keyword
  • 8.9 Access Specifiers and their Scope
  • 8.10 Defining Member Functions
  • 8.10.1 Member Function Inside the class
  • 8.10.2 Private Member Function
  • 8.10.3 Member Function Outside the class
  • 8.11 Characteristics of Member Functions
  • 8.12 Outside Member Function as Inline
  • 8.13 Rules for Inline Functions
  • 8.14 Data Hiding or Encapsulation
  • 8.15 Classes, Objects, and Memory
  • 8.16 static Member Variables
  • 8.17 static Member Functions
  • 8.17.1 static Private Member Function
  • 8.17.2 static Public Member Variable
  • 8.18 static Object
  • 8.19 Array of Objects
  • 8.20 Objects as Function Arguments
  • 8.21 friend Functions
  • 8.21.1 friend Classes
  • 8.22 The const Member Functions
  • 8.23 The Volatile Member Function
  • 8.24 Recursive Member Function
  • 8.25 Local Classes
  • 8.26 empty, static, and const Classes.
  • 8.27 Member Function and Non-member Function
  • 8.28 The main() Function as a Member Function
  • 8.29 Overloading Member Functions
  • 8.30 Overloading main() Functions
  • 8.31 The main(), Member Function, and Indirect Recursion
  • 8.32 Bit Fields and Classes
  • 8.33 Nested Class
  • 8.34 More Programs
  • 8.34.1 Member Function Inside the class
  • 8.34.2 Member Function Outside the class
  • 8.34.3 Private Member Functions
  • Summary
  • Exercises
  • Chapter 9 : Constructors and Destructors
  • 9.1 Introduction
  • 9.2 Constructors and Destructors
  • 9.2.1 Constructors
  • 9.2.2 Destructors
  • 9.3 Characteristics of Constructors and Destructors
  • 9.3.1 Constructors
  • 9.3.2 Destructors
  • 9.4 Applications with Constructors
  • 9.5 Constructors with Arguments (Parameterized Constructor)
  • 9.6 Overloading Constructors (Multiple Constructors)
  • 9.7 Array of Objects Using Constructors
  • 9.8 Constructors with Default Arguments
  • 9.9 Copy Constructors
  • 9.10 The const Objects
  • 9.11 Destructors
  • 9.12 Calling Constructors and Destructors
  • 9.13 Qualifier and Nested Classes
  • 9.14 Anonymous Objects
  • 9.15 Private Constructors and Destructors
  • 9.16 Dynamic Initialization Using Constructors
  • 9.17 Dynamic Operators and Constructors
  • 9.18 main() as a Constructor and Destructor
  • 9.19 Recursive Constructors
  • 9.20 Program Execution Before main()
  • 9.21 Constructor and Destructor with Static Members
  • 9.22 Local Versus Global Object
  • 9.23 More Programs
  • Summary
  • Exercises
  • Chapter 10 : Operator Overloading and Type Conversion
  • 10.1 Introduction
  • 10.2 The Keyword Operator
  • 10.3 Overloading Unary Operators
  • 10.4 Operator Return Type
  • 10.5 Constraint on Increment and Decrement Operators
  • 10.6 Overloading Binary Operators
  • 10.7 Overloading with friend Function
  • 10.8 Overloading Assignment Operator (=)
  • 10.9 Type Conversion.
  • 10.9.1 Conversion from Basic to Class Type
  • 10.9.2 Conversion from Class Type to Basic Data Type
  • 10.9.3 Conversion from One Class Type to Another Class Type
  • 10.10 Rules for Overloading Operators
  • 10.11 One-Argument Constructor and Operator Function
  • 10.12 Overloading Stream Operators
  • 10.13 More Programs
  • Summary
  • Exercises
  • Chapter 11 : Inheritance
  • 11.1 Introduction
  • 11.2 Reusability
  • 11.3 Access Specifiers and Simple Inheritance
  • 11.4 Protected Data with Private Inheritance
  • 11.5 Types of Inheritance
  • 11.6 Single Inheritance
  • 11.7 Multilevel Inheritance
  • 11.8 Multiple Inheritance
  • 11.9 Hierarchical Inheritance
  • 11.10 Hybrid Inheritance
  • 11.11 Multipath Inheritance
  • 11.12 Virtual Base Classes
  • 11.13 Constructors, Destructors, and Inheritance
  • 11.13.1 Constructors and destructors in base and derived classes
  • 11.13.2 Base and derived classes without constructors
  • 11.13.3 Base class with constructors and derived class without constructors
  • 11.13.4 Base class without constructors and derived class with constructors
  • 11.13.5 Base and derived classes with constructors
  • 11.13.6 Base class with various constructors and derived class with one constructor
  • 11.13.7 Base and derived classes without default constructors
  • 11.13.8 Constructors and multiple inheritance
  • 11.13.9 Constructors in multiple inheritance with explicit calls
  • 11.13.10 Multiple inheritance and virtual class
  • 11.13.11 Execution of constructors in multilevel inheritance
  • 11.14 Object as a Class Member
  • 11.15 Abstract Classes
  • 11.16 Qualifier Classes and Inheritance
  • 11.17 Constructors in Derived Class
  • 11.18 Pointers and Inheritance
  • 11.19 Overloading Member Function
  • 11.20 Advantages of Inheritance
  • 11.21 Disadvantages of Inheritance
  • 11.22 More Programs
  • Summary
  • Exercises
  • Chapter 12 : Arrays.
  • 12.1 Introduction.