Deciphering Object-Oriented Programming with C++ : A Practical, in-Depth Guide to Implementing Object-oriented Design Principles to Create Robust Code.
Embrace object-oriented programming and explore language complexities, design patterns, and smart programming techniques using this hands-on guide with C++ 20 compliant examples. Even though object-oriented software design enables more easily maintainable code, companies choose C++ as an OO language...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Birmingham :
Packt Publishing, Limited,
2022.
|
Temas: | |
Acceso en línea: | Texto completo (Requiere registro previo con correo institucional) |
Tabla de Contenidos:
- Cover
- Title Page
- Copyright and Credits
- Dedication
- Contributors
- Table of Contents
- Preface
- Part 1: C++ Building Block Essentials
- Chapter 1: Understanding Basic C++ Assumptions
- Technical requirements
- Reviewing basic C++ language syntax
- Comment styles
- Variable declarations and standard data types
- Variables and array basics
- Recapping basic I/O
- The iostream library
- Basic iostream manipulators
- Revisiting control structures, statements, and looping
- Control structures
- if, else if, and else
- Looping constructs
- while, do while, and for loops
- Reviewing C++ operators
- Revisiting function basics
- Reviewing user defined type basics
- struct
- typedef and "using" alias declaration
- class
- enum and strongly-typed enum
- Recapping namespace basics
- Summary
- Questions
- Chapter 2: Adding Language Necessities
- Technical requirements
- Using the const and constexpr qualifiers
- const and constexpr variables
- const qualification with functions
- Working with function prototypes
- Defining function prototypes
- Naming arguments in function prototypes
- Adding default values to function prototypes
- Prototyping with different default values in different scopes
- Understanding function overloading
- Learning the basics of function overloading
- Eliminating excessive overloading with standard type conversion
- Ambiguities arising from function overloading and type conversion
- Summary
- Questions
- Chapter 3: Indirect Addressing
- Pointers
- Technical requirements
- Understanding pointer basics and memory allocation
- Revisiting pointer basics
- Using the address-of and dereference operators
- Using operators new() and delete()
- Creating and using pointers to user defined types
- Allocating and deallocating arrays at runtime
- Dynamically allocating single dimension arrays
- Dynamically allocating 2-D arrays
- an array of pointers
- Dynamically allocating 2-D arrays
- pointers to pointers
- Dynamically allocating N-D arrays
- pointers to pointers to pointers
- Using pointers with functions
- Passing pointers as arguments to functions
- Using pointers as return values from functions
- Using the const qualifier with pointers
- Using pointers to constant objects
- Using constant pointers to objects
- Using constant pointers to constant objects
- Using pointers to constant objects as function arguments and as return types from functions
- Using pointers to objects of unspecified types
- Creating void pointers
- Looking ahead to smart pointers for safety
- Summary
- Questions
- Chapter 4: Indirect Addressing
- References
- Technical requirements
- Understanding reference basics
- Declaring, initializing, and accessing references
- Referencing existing objects of user defined types
- Using references with functions
- Passing references as arguments to functions
- Using references as return values from functions