
Luxury C++ Programming
Description
Book Introduction
『Premium C++ Programming (Revised 3rd Edition)』 is a book aimed at readers who know the basics of the C language or other high-level languages.
It does not cover the basic knowledge of the C language such as variables, functions, loops, and conditional statements (a C++ basic learning PDF is provided on the website), and focuses on object-oriented programming and unique features of C++.
Advanced knowledge that is too difficult to cover in the main text is organized in the appendix.
We have included many pictures and illustrations to help you easily learn the concepts and methods of C++ programming, and we have created appropriate and diverse examples to help you learn the theory through practice.
Additionally, Check Time problems were inserted in each section to help students review what they have learned.
I put more effort into the practice problems.
The questions are divided into theoretical and practical problems, and the theoretical problems are designed to get to the heart of the matter.
For practice problems, we created original problems appropriate to the topic of each chapter and inserted difficulty levels and objectives to increase interest and understanding of the problems.
Additionally, execution results have been inserted to make it clear to readers what code they need to write.
In particular, each chapter includes interesting Open Challenge problems so that you can challenge yourself.
It does not cover the basic knowledge of the C language such as variables, functions, loops, and conditional statements (a C++ basic learning PDF is provided on the website), and focuses on object-oriented programming and unique features of C++.
Advanced knowledge that is too difficult to cover in the main text is organized in the appendix.
We have included many pictures and illustrations to help you easily learn the concepts and methods of C++ programming, and we have created appropriate and diverse examples to help you learn the theory through practice.
Additionally, Check Time problems were inserted in each section to help students review what they have learned.
I put more effort into the practice problems.
The questions are divided into theoretical and practical problems, and the theoretical problems are designed to get to the heart of the matter.
For practice problems, we created original problems appropriate to the topic of each chapter and inserted difficulty levels and objectives to increase interest and understanding of the problems.
Additionally, execution results have been inserted to make it clear to readers what code they need to write.
In particular, each chapter includes interesting Open Challenge problems so that you can challenge yourself.
index
CHAPTER 01 Getting Started with C++
1.1 Computers and Programming
1.2 History of the C++ Language
1.3 Features of the C++ language
1.4 C++ program development process
1.5 C++ Standard Library
1.6 C++ program development using Visual Studio
summation
Open Challenge
Practice problems
CHAPTER 02 C++ Programming Fundamentals
2.1 Basic elements of a C++ program and screen output
2.2 Namespace and std::
2.3 Receiving key input
2.4 Entering strings using the keyboard
2.5 The Hidden Truth About #include 〈iostream〉
summation
Open Challenge
Practice problems
CHAPTER 03 Classes and Objects
3.1 Understanding Objects
3.2 Creating a C++ Class
3.3 Object Creation and Object Utilization
3.4 Constructor
3.5 Destructor
3.6 Access Specification
3.7 Inline functions
3.8 C++ Structures
3.9 Good C++ Program Writing Practices
summation
Open Challenge
Practice problems
CHAPTER 04 Object Pointers, Object Arrays, and Dynamic Object Creation
4.1 Object Pointers
4.2 Object Arrays
4.3 Dynamic memory allocation and return
4.4 Dynamic creation and return of objects and object arrays
4.5 this pointer
4.6 Using strings using the string class
summation
Open Challenge
Practice problems
CHAPTER 05 Functions and References, Copy Constructors
5.1 Review of Function Argument Passing Methods
5.2 Passing objects when calling functions
5.3 Object Substitution and Object Return
5.4 References and Functions
5.5 Copy Constructor
summation
Open Challenge
Practice problems
CHAPTER 06 Function Overload and Static Members
6.1 Function Overload
6.2 Default Parameters
6.3 Ambiguity of Function Overload
6.4 static members
summation
Open Challenge
Practice problems
CHAPTER 07 Friends and Operator Overlapping
7.1 C++ Friend Concept
7.2 Operator Overload
7.3 Binary operator overload
7.4 Unary Operator Overload
7.5 Operator overload using friends
7.6 Practice writing the 〈〈 operator that returns a reference
summation
Open Challenge
Practice problems
CHAPTER 08 Inheritance
8.1 Concept of Inheritance
8.2 Class Inheritance and Objects
8.3 Inheritance and Object Pointers
8.4 Specifying protected access
8.5 Inheritance, constructors, and destructors
8.6 Multiple Inheritance
summation
Open Challenge
Practice problems
CHAPTER 09 Virtual Functions and Abstract Classes
9.1 Function Redefinition in Inheritance Relationships
9.2 Virtual Functions and Overriding
9.3 Use Cases of Virtual Functions and Overriding
9.4 Abstract Classes
summation
Open Challenge
Practice problems
CHAPTER 10 TEMPLATES AND THE STANDARD TEMPLATE LIBRARY (STL)
10.1 Generalization and Templates
10.2 Creating Various Generic Functions
10.3 Creating a Generic Class
10.4 C++ Standard Template Library (STL) and its Use
summation
Open Challenge
Practice problems
CHAPTER 11 C++ I/O System
11.1 C++ Input/Output Basics
11.2 Character output using ostream member functions
11.3 Character input using istream member functions
11.4 Format Input/Output
11.5 Insertion operator (〈〈) and extraction operator (〉〉)
11.6 Creating a User Operator
summation
Open Challenge
Practice problems
CHAPTER 12 C++ File Input/Output
12.1 Text files and binary files
12.2 File I/O Overview
12.3 Text file input/output using the 〈〈and 〉〉 operator
12.4 File Mode
12.5 Text I/O using member functions
12.6 Binary I/O
summation
Open Challenge
Practice problems
CHAPTER 13 Exception Handling and Linking with the C Language
13.1 Runtime Errors and Error Handling
13.2 Exceptions and Exception Handling
13.3 Detailed explanation of exception handling
13.4 Creating an Exception Class
13.5 Linking C++ Code and C Code
summation
Open Challenge
Practice problems
Check Time Correct Answer
Provided by website
supplement
Learning C++ Basics
1.1 Computers and Programming
1.2 History of the C++ Language
1.3 Features of the C++ language
1.4 C++ program development process
1.5 C++ Standard Library
1.6 C++ program development using Visual Studio
summation
Open Challenge
Practice problems
CHAPTER 02 C++ Programming Fundamentals
2.1 Basic elements of a C++ program and screen output
2.2 Namespace and std::
2.3 Receiving key input
2.4 Entering strings using the keyboard
2.5 The Hidden Truth About #include 〈iostream〉
summation
Open Challenge
Practice problems
CHAPTER 03 Classes and Objects
3.1 Understanding Objects
3.2 Creating a C++ Class
3.3 Object Creation and Object Utilization
3.4 Constructor
3.5 Destructor
3.6 Access Specification
3.7 Inline functions
3.8 C++ Structures
3.9 Good C++ Program Writing Practices
summation
Open Challenge
Practice problems
CHAPTER 04 Object Pointers, Object Arrays, and Dynamic Object Creation
4.1 Object Pointers
4.2 Object Arrays
4.3 Dynamic memory allocation and return
4.4 Dynamic creation and return of objects and object arrays
4.5 this pointer
4.6 Using strings using the string class
summation
Open Challenge
Practice problems
CHAPTER 05 Functions and References, Copy Constructors
5.1 Review of Function Argument Passing Methods
5.2 Passing objects when calling functions
5.3 Object Substitution and Object Return
5.4 References and Functions
5.5 Copy Constructor
summation
Open Challenge
Practice problems
CHAPTER 06 Function Overload and Static Members
6.1 Function Overload
6.2 Default Parameters
6.3 Ambiguity of Function Overload
6.4 static members
summation
Open Challenge
Practice problems
CHAPTER 07 Friends and Operator Overlapping
7.1 C++ Friend Concept
7.2 Operator Overload
7.3 Binary operator overload
7.4 Unary Operator Overload
7.5 Operator overload using friends
7.6 Practice writing the 〈〈 operator that returns a reference
summation
Open Challenge
Practice problems
CHAPTER 08 Inheritance
8.1 Concept of Inheritance
8.2 Class Inheritance and Objects
8.3 Inheritance and Object Pointers
8.4 Specifying protected access
8.5 Inheritance, constructors, and destructors
8.6 Multiple Inheritance
summation
Open Challenge
Practice problems
CHAPTER 09 Virtual Functions and Abstract Classes
9.1 Function Redefinition in Inheritance Relationships
9.2 Virtual Functions and Overriding
9.3 Use Cases of Virtual Functions and Overriding
9.4 Abstract Classes
summation
Open Challenge
Practice problems
CHAPTER 10 TEMPLATES AND THE STANDARD TEMPLATE LIBRARY (STL)
10.1 Generalization and Templates
10.2 Creating Various Generic Functions
10.3 Creating a Generic Class
10.4 C++ Standard Template Library (STL) and its Use
summation
Open Challenge
Practice problems
CHAPTER 11 C++ I/O System
11.1 C++ Input/Output Basics
11.2 Character output using ostream member functions
11.3 Character input using istream member functions
11.4 Format Input/Output
11.5 Insertion operator (〈〈) and extraction operator (〉〉)
11.6 Creating a User Operator
summation
Open Challenge
Practice problems
CHAPTER 12 C++ File Input/Output
12.1 Text files and binary files
12.2 File I/O Overview
12.3 Text file input/output using the 〈〈and 〉〉 operator
12.4 File Mode
12.5 Text I/O using member functions
12.6 Binary I/O
summation
Open Challenge
Practice problems
CHAPTER 13 Exception Handling and Linking with the C Language
13.1 Runtime Errors and Error Handling
13.2 Exceptions and Exception Handling
13.3 Detailed explanation of exception handling
13.4 Creating an Exception Class
13.5 Linking C++ Code and C Code
summation
Open Challenge
Practice problems
Check Time Correct Answer
Provided by website
supplement
Learning C++ Basics
Publisher's Review
C++ was started in 1979 by Bjarne Stroustrup under the name “C with Classes,” but is now used in all areas of software, including system software, application software, games, embedded software, and mobile programs.
C++ is known to be faster than Java or C# (although this is somewhat controversial), and has an advantage in hardware control because it directly accesses memory and I/O ports.
As such, C++ is a broad and powerful language, and it is the mother language that gave birth to modern object-oriented languages such as Java and C#. Therefore, a thorough understanding of the C++ language is necessary to build a solid foundation as a software professional.
What's added or changed in the 3rd edition
1.
About 80% of the practice problems were replaced.
Problems with odd and even numbers are presented in similar pairs, so that students can practice with odd-numbered problems for which the correct answers are known and then try even-numbered problems.
2.
Chapter 2 includes one more example (Example 2-7) to help you understand null characters and strings, and slightly revises the preprocessing implications of #include to better understand them.
3.
Chapter 3 provides a simplified explanation of C++ structures.
4.
In Chapter 4, we reduced the number of examples by consolidating the overlapping examples in the dynamic generation section to avoid lengthening the learning process.
In section 4.6, the append() function was added to the string class and simple content for converting integers or real numbers to strings was added.
5.
Chapter 5 includes an example and a diagram to help you understand reference return, an important feature of C++.
Reference returns are difficult to understand, but they are essential for understanding other features of C++, such as operator overload.
6.
Chapter 8 includes an appendix explaining the types of inheritance and virtual inheritance, which solves the problem of multiple inheritance, to help readers focus on understanding the core concepts of inheritance.
7.
Chapter 10 has a shorter explanation of template basics and three examples have been removed.
And I added two examples of handling the map container and its usage.
This is because STL is widely used in C++ program development.
Also, to focus on templates, I moved the explanation of auto and lambda to the appendix.
8.
Added some helpful hints and tips in a few places.
Contents of this book
Chapter 1 explains the C++ language.
Learn about the history and features of the C++ language and explain the development process of C++ programs.
Chapter 2 explains the basics of C++ programming.
Learn about the basic elements of a C++ program and screen output, and how to handle strings and input strings from the keyboard.
Chapter 3 explains classes and objects.
Understand objects, classes, constructors, destructors, access designators, inline functions, and C++ structures, and learn the process of writing desirable C++ programs.
Chapter 4 explains object pointers and object arrays, dynamic memory allocation and return, and dynamic creation and return of objects and object arrays.
We will also learn about the basic concepts and constraints of this, and how to use strings using the string class.
Chapter 5 explains functions, references, and copy constructors.
Learn about call by value, call by address, object substitution and object return, references and functions.
It also explains deep copy and shallow copy.
Chapter 6 explains function overloading and static members.
We will learn about ambiguity due to default parameters, type conversion, reference parameters, and default parameters.
It also explains the use of static members.
Chapter 7 explains friends and operator overload.
Learn about the concept of friends, binary operator overload, and unary operator overload.
It also explains how to write operator functions as external functions of a class and declare them as friends.
Chapter 8 explains the concept of inheritance, class inheritance and objects, inheritance and object pointers, and protected access designation.
We will also learn about declaring and utilizing multiple inheritance.
Chapter 9 explains virtual functions and abstract classes.
Learn about function duplication in inheritance relationships and the use cases of virtual functions and overriding.
It also explains the concept, implementation, and use of abstract classes.
Chapter 10 describes templates and the Standard Template Library (STL).
Understand the concept of generalization, create various generic functions and generic classes, and explain the C++ Standard Template Library (STL) and its utilization.
Chapter 11 describes the C++ input/output system.
Understand stream input/output, learn about character input/output, formatted input/output, user insertion and extraction operators, and create user operators.
Chapter 12 covers C++ file input/output.
Understand text files and binary files and explain how to read and write files.
Chapter 13 explains exception handling and linking with the C language.
Understand runtime errors and error handling methods, and learn how to write exception handling code.
We will also learn how to use source code written in C or already compiled object code in C++ programs.
C++ is known to be faster than Java or C# (although this is somewhat controversial), and has an advantage in hardware control because it directly accesses memory and I/O ports.
As such, C++ is a broad and powerful language, and it is the mother language that gave birth to modern object-oriented languages such as Java and C#. Therefore, a thorough understanding of the C++ language is necessary to build a solid foundation as a software professional.
What's added or changed in the 3rd edition
1.
About 80% of the practice problems were replaced.
Problems with odd and even numbers are presented in similar pairs, so that students can practice with odd-numbered problems for which the correct answers are known and then try even-numbered problems.
2.
Chapter 2 includes one more example (Example 2-7) to help you understand null characters and strings, and slightly revises the preprocessing implications of #include to better understand them.
3.
Chapter 3 provides a simplified explanation of C++ structures.
4.
In Chapter 4, we reduced the number of examples by consolidating the overlapping examples in the dynamic generation section to avoid lengthening the learning process.
In section 4.6, the append() function was added to the string class and simple content for converting integers or real numbers to strings was added.
5.
Chapter 5 includes an example and a diagram to help you understand reference return, an important feature of C++.
Reference returns are difficult to understand, but they are essential for understanding other features of C++, such as operator overload.
6.
Chapter 8 includes an appendix explaining the types of inheritance and virtual inheritance, which solves the problem of multiple inheritance, to help readers focus on understanding the core concepts of inheritance.
7.
Chapter 10 has a shorter explanation of template basics and three examples have been removed.
And I added two examples of handling the map container and its usage.
This is because STL is widely used in C++ program development.
Also, to focus on templates, I moved the explanation of auto and lambda to the appendix.
8.
Added some helpful hints and tips in a few places.
Contents of this book
Chapter 1 explains the C++ language.
Learn about the history and features of the C++ language and explain the development process of C++ programs.
Chapter 2 explains the basics of C++ programming.
Learn about the basic elements of a C++ program and screen output, and how to handle strings and input strings from the keyboard.
Chapter 3 explains classes and objects.
Understand objects, classes, constructors, destructors, access designators, inline functions, and C++ structures, and learn the process of writing desirable C++ programs.
Chapter 4 explains object pointers and object arrays, dynamic memory allocation and return, and dynamic creation and return of objects and object arrays.
We will also learn about the basic concepts and constraints of this, and how to use strings using the string class.
Chapter 5 explains functions, references, and copy constructors.
Learn about call by value, call by address, object substitution and object return, references and functions.
It also explains deep copy and shallow copy.
Chapter 6 explains function overloading and static members.
We will learn about ambiguity due to default parameters, type conversion, reference parameters, and default parameters.
It also explains the use of static members.
Chapter 7 explains friends and operator overload.
Learn about the concept of friends, binary operator overload, and unary operator overload.
It also explains how to write operator functions as external functions of a class and declare them as friends.
Chapter 8 explains the concept of inheritance, class inheritance and objects, inheritance and object pointers, and protected access designation.
We will also learn about declaring and utilizing multiple inheritance.
Chapter 9 explains virtual functions and abstract classes.
Learn about function duplication in inheritance relationships and the use cases of virtual functions and overriding.
It also explains the concept, implementation, and use of abstract classes.
Chapter 10 describes templates and the Standard Template Library (STL).
Understand the concept of generalization, create various generic functions and generic classes, and explain the C++ Standard Template Library (STL) and its utilization.
Chapter 11 describes the C++ input/output system.
Understand stream input/output, learn about character input/output, formatted input/output, user insertion and extraction operators, and create user operators.
Chapter 12 covers C++ file input/output.
Understand text files and binary files and explain how to read and write files.
Chapter 13 explains exception handling and linking with the C language.
Understand runtime errors and error handling methods, and learn how to write exception handling code.
We will also learn how to use source code written in C or already compiled object code in C++ programs.
GOODS SPECIFICS
- Date of issue: July 25, 2025
- Page count, weight, size: 692 pages | 200*250*35mm
- ISBN13: 9791194630241
- ISBN10: 1194630243
You may also like
카테고리
korean
korean