更新时间:2021-07-02 14:43:17
coverpage
Title Page
Copyright and Credits
Hands-On System Programming with C++
Dedication
About Packt
Why subscribe?
Packt.com
Contributors
About the author
About the reviewer
Packt is searching for authors like you
Preface
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Conventions used
Get in touch
Reviews
Getting Started with System Programming
Technical requirements
Understanding system calls
The anatomy of a system call
Learning about different types of system calls
Console input/output
Memory allocation
File input/output
Networking
Time
Threading and process creation
System call security risks
SYSRET
Meltdown and Spectre
Benefits of using C++ when system programming
Type safety in C++
Objects of C++
Templates used in C++
Functional programming associated with C++
Error handling mechanism in C++
APIs and C++ containers in C++
Summary
Questions
Further reading
Learning the C C++17 and POSIX Standards
Beginning with the C standard language
How the standard is organized
Environment
Language
Libraries
How a C program starts
All about linking
Static libraries
Dynamic libraries
Scope
Pointers and arrays
Learning about the C++ standard
General conventions and concepts
Language syntax
Linking C++ applications
Pointers versus references
Beginning with the POSIX standard
Memory management
Filesystems
Sockets
Threading
System Types for C and C++
Exploring C and C++ default types
Character types
Integer types
Floating – point numbers
Boolean
Learning standard integer types
Structure packing
C++ RAII and the GSL Refresher
A brief overview of C++17
Language changes
Initializers in if/switch statements
Additions to compile-time facilities
Namespaces
Structured bindings
Inline variables
Changes in the library
String View
std::any std::variant and std::optional
Resource Acquisition Is Initialization (RAII)