Beginning C++ programming :: this is the start of your journey into the most powerful language available to the programming public /
Modern C++ at your fingertips! About This Book This book gets you started with the exciting world of C++ programming It will enable you to write C++ code that uses the standard library, has a level of object orientation, and uses memory in a safe and effective way It forms the basis of programming a...
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Elektronisch E-Book |
Sprache: | English |
Veröffentlicht: |
Birmingham, UK :
Packt Publishing,
2017.
|
Schlagworte: | |
Online-Zugang: | Volltext |
Zusammenfassung: | Modern C++ at your fingertips! About This Book This book gets you started with the exciting world of C++ programming It will enable you to write C++ code that uses the standard library, has a level of object orientation, and uses memory in a safe and effective way It forms the basis of programming and covers concepts such as data structures and the core programming language Who This Book Is For A computer, an internet connection, and the desire to learn how to code in C++ is all you need to get started with this book. What You Will Learn Get familiar with the structure of C++ projects Identify the main structures in the language: functions and classes Feel confident about being able to identify the execution flow through the code Be aware of the facilities of the standard library Gain insights into the basic concepts of object orientation Know how to debug your programs Get acquainted with the standard C++ library In Detail C++ has come a long way and is now adopted in several contexts. Its key strengths are its software infrastructure and resource-constrained applications, including desktop applications, servers, and performance-critical applications, not to forget its importance in game programming. Despite its strengths in these areas, beginners usually tend to shy away from learning the language because of its steep learning curve. The main mission of this book is to make you familiar and comfortable with C++. You will finish the book not only being able to write your own code, but more importantly, you will be able to read other projects. It is only by being able to read others' code that you will progress from a beginner to an advanced programmer. This book is the first step in that progression. The first task is to familiarize you with the structure of C++ projects so you will know how to start reading a project. Next, you will be able to identify the main structures in the language, functions, and classes, and feel confident being able to identify the execution flow through the code. You will then become aware of the facilities of the standard library and be able to determine whether you need to write a routine yourself, or use an existing routine in the standard library. Throughout the book, there is a big emphasis on memory and pointers. You will understand memory usage, allocation, and access, and be able to write code that does not leak memory. Finally, you will learn about C++ classes and get an introduction to object orientation ... |
Beschreibung: | 1 online resource (1 volume) : illustrations |
ISBN: | 9781787129283 1787129284 |
Internformat
MARC
LEADER | 00000cam a2200000 i 4500 | ||
---|---|---|---|
001 | ZDB-4-EBA-ocn986525902 | ||
003 | OCoLC | ||
005 | 20241004212047.0 | ||
006 | m o d | ||
007 | cr unu|||||||| | ||
008 | 170510s2017 enka o 000 0 eng d | ||
040 | |a UMI |b eng |e rda |e pn |c UMI |d IDEBK |d STF |d TOH |d TEFOD |d OCLCF |d OCLCQ |d CHVBK |d COO |d N$T |d OCLCO |d UOK |d CEF |d KSU |d UKMGB |d WYU |d ZCU |d UAB |d UKAHL |d RDF |d UKOBU |d QGK |d OCLCO |d OCLCQ |d OCLCO |d INARC |d OCLCL |d OCLCQ |d OCLCL |d OCLCQ |d DXU |d OCLCQ | ||
015 | |a GBB790384 |2 bnb | ||
016 | 7 | |a 018354703 |2 Uk | |
020 | |a 9781787129283 |q (electronic bk.) | ||
020 | |a 1787129284 |q (electronic bk.) | ||
020 | |z 9781787124943 | ||
035 | |a (OCoLC)986525902 | ||
037 | |a CL0500000857 |b Safari Books Online | ||
037 | |a 9BC94727-9BEC-46C4-9A04-BFBB3DAAACF6 |b OverDrive, Inc. |n http://www.overdrive.com | ||
050 | 4 | |a QA76.73.C153 | |
072 | 7 | |a COM |x 051070 |2 bisacsh | |
082 | 7 | |a 005.1/33 |2 23 | |
049 | |a MAIN | ||
100 | 1 | |a Grimes, Richard, |d 1964- |e author. |1 https://id.oclc.org/worldcat/entity/E39PCjtKfgkhbHCyDrqywv8f7b |0 http://id.loc.gov/authorities/names/no99009537 | |
245 | 1 | 0 | |a Beginning C++ programming : |b this is the start of your journey into the most powerful language available to the programming public / |c Richard Grimes. |
246 | 1 | 3 | |a Beginning C plus plus programming |
264 | 1 | |a Birmingham, UK : |b Packt Publishing, |c 2017. | |
300 | |a 1 online resource (1 volume) : |b illustrations | ||
336 | |a text |b txt |2 rdacontent | ||
337 | |a computer |b c |2 rdamedia | ||
338 | |a online resource |b cr |2 rdacarrier | ||
588 | 0 | |a Online resource; title from PDF title page (EBSCO, viewed February 27, 2018) | |
520 | |a Modern C++ at your fingertips! About This Book This book gets you started with the exciting world of C++ programming It will enable you to write C++ code that uses the standard library, has a level of object orientation, and uses memory in a safe and effective way It forms the basis of programming and covers concepts such as data structures and the core programming language Who This Book Is For A computer, an internet connection, and the desire to learn how to code in C++ is all you need to get started with this book. What You Will Learn Get familiar with the structure of C++ projects Identify the main structures in the language: functions and classes Feel confident about being able to identify the execution flow through the code Be aware of the facilities of the standard library Gain insights into the basic concepts of object orientation Know how to debug your programs Get acquainted with the standard C++ library In Detail C++ has come a long way and is now adopted in several contexts. Its key strengths are its software infrastructure and resource-constrained applications, including desktop applications, servers, and performance-critical applications, not to forget its importance in game programming. Despite its strengths in these areas, beginners usually tend to shy away from learning the language because of its steep learning curve. The main mission of this book is to make you familiar and comfortable with C++. You will finish the book not only being able to write your own code, but more importantly, you will be able to read other projects. It is only by being able to read others' code that you will progress from a beginner to an advanced programmer. This book is the first step in that progression. The first task is to familiarize you with the structure of C++ projects so you will know how to start reading a project. Next, you will be able to identify the main structures in the language, functions, and classes, and feel confident being able to identify the execution flow through the code. You will then become aware of the facilities of the standard library and be able to determine whether you need to write a routine yourself, or use an existing routine in the standard library. Throughout the book, there is a big emphasis on memory and pointers. You will understand memory usage, allocation, and access, and be able to write code that does not leak memory. Finally, you will learn about C++ classes and get an introduction to object orientation ... | ||
505 | 0 | |a Cover -- Credits -- About the Author -- About the Reviewer -- www.PacktPub.com -- Customer Feedback -- Table of Contents -- Preface -- Chapter 1: Starting with C++ -- What will you find in this chapter? -- What is C++? -- Installing Visual C++ -- Setting up -- Downloading the installation files -- Installing Visual Studio -- Registering with Microsoft -- Examining C++ projects -- Compilers -- Linking the code -- Source files -- A simple example -- Creating source files -- Compiling the code -- Passing parameters between the command-line and an executable -- The preprocessor and symbols -- Defining constants -- Using macros -- Using symbols -- Using pragmas -- Dependencies -- Libraries -- Pre-compiled headers -- Project structure -- Managing dependencies -- Makefiles -- Writing a simple project -- The project structure -- Creating the precompiled header -- Creating the main file -- Using input and output streams -- Using time functions -- Building the executable -- Testing the code -- Changing the project -- Summary -- Chapter 2: Understanding Language Features -- Writing C++ -- Using white space -- Formatting code -- Writing statements -- Working with expressions -- Using the comma operator -- Using types and variables -- Using constants and literals -- Defining constants -- Using constant expressions -- Using enumerations -- Declaring pointers -- Using namespaces -- C++ scoping of variables -- Using operators -- Exploring the built-in operators -- Arithmetic operators -- Increment and decrement operators -- Bitwise operators -- Boolean operators -- Bitwise shift operators -- Assignment operators -- Controlling execution flow -- Using conditional statements -- Selecting -- Looping -- Looping with iteration -- Conditional loops -- Jumping -- Using C++ language features -- Summary -- Chapter 3: Exploring C++ Types -- Exploring built-in types. | |
505 | 8 | |a Integers -- Specifying integer literals -- Using bitset to show bit patterns -- Determining integer byte order -- Floating point types -- Specifying floating point literals -- Characters and strings -- Character types -- Using character macros -- Specifying character literals -- Specifying string literals -- Unicode literals -- Raw strings -- String byte order -- Boolean -- void -- Initializers -- Default values -- Declarations without a type -- Storage classes -- Using type aliases -- Aggregating data in record types -- Structures -- Initializing -- Structure fields -- Using structure names -- Determining alignment -- Storing data in the same memory with unions -- Accessing runtime type information -- Determining type limits -- Converting between types -- Type conversions -- Promoting conversions -- Narrowing conversions -- Narrowing to bool -- Converting signed types -- Casting -- Casting away const-ness -- Casting without runtime checks -- Casting pointers without runtime checks -- Casting with runtime checks -- Casting with list initializer -- Using C casts -- Using C++ types -- Summary -- Chapter 4: Working with Memory, Arrays, and Pointers -- Using memory in C++ -- Using C++ pointer syntax -- Using null pointers -- Types of memory -- Pointer arithmetic -- Using arrays -- Function parameters -- Multidimensional arrays -- Passing multidimensional arrays to functions -- Using arrays of characters -- Comparing strings -- Preventing buffer overruns -- Using pointers in C++ -- Accessing out of bounds -- Pointers to deallocated memory -- Converting pointers -- Constant pointers -- Changing the type pointed to -- Allocating memory in code -- Allocating individual objects -- Allocating arrays of objects -- Handling failed allocations -- Using other versions of the new operator -- Memory lifetime -- The Windows SDK and pointers. | |
505 | 8 | |a Memory and the C++ Standard Library -- Standard Library arrays -- Using the stack-based array class -- Using the dynamically allocated vector class -- References -- Constant references -- Returning references -- Temporaries and references -- The rvalue references -- Ranged for and references -- Using pointers in practice -- Creating the project -- Adding a task object to the list -- Deleting the task list -- Iterating the task list -- Inserting items -- Summary -- Chapter 5: Using Functions -- Defining C++ functions -- Declaring and defining functions -- Specifying linkage -- Inlining -- Determining the return type -- Naming the function -- Function parameters -- Specifying exceptions -- Function body -- Using function parameters -- Passing Initializer lists -- Using default parameters -- Variable number of parameters -- Initializer lists -- Argument lists -- Function features -- Call stack -- Specifying calling conventions -- Using C linkage -- Specifying how the stack Is maintained -- Using recursion -- Overloading functions -- Functions and scope -- Deleted functions -- Passing by value and passing by reference -- Designing functions -- Pre- and post-conditions -- Using invariants -- Function pointers -- Remember the parentheses! -- Declaring function pointers -- Using function pointers -- Templated functions -- Defining templates -- Using template parameter values -- Specialized templates -- Variadic templates -- Overloaded operators -- Function objects -- Introducing lambda expressions -- Using functions in C++ -- Summary -- Chapter 6: Classes -- Writing classes -- Reviewing structures -- Defining classes -- Defining class behavior -- Using the this pointer -- Using the scope resolution operator -- Defining class state -- Creating objects -- Construction of objects -- Defining constructors -- Delegating constructors -- Copy constructor. | |
505 | 8 | |a Converting between types -- Making friends -- Marking constructors as explicit -- Destructing objects -- Assigning objects -- Move semantics -- Declaring static members -- Defining static members -- Using static and global objects -- Named constructors -- Nested classes -- Accessing const objects -- Using objects with pointers -- Getting pointers to object members -- Operator overloading -- Defining function classes -- Defining conversion operators -- Managing resources -- Writing wrapper classes -- Using smart pointers -- Managing exclusive ownership -- Sharing ownership -- Handling dangling pointers -- Templates -- Using classes -- Summary -- Chapter 7: Introduction to Object-Orientated Programming -- Inheritance and composition -- Inheriting from a class -- Overriding methods and hiding names -- Using pointers and references -- Access levels -- Changing access level through inheritance -- Inheritance access levels -- Multiple inheritance -- Object slicing -- Introducing polymorphism -- Virtual methods -- Virtual method tables -- Multiple inheritance and virtual method tables -- Virtual methods, construction, and destruction -- Containers and virtual methods -- Friends and inheritance -- Override and final -- Virtual inheritance -- Abstract classes -- Obtaining type information -- Smart pointers and virtual methods -- Interfaces -- Class relationships -- Using mixin classes -- Using polymorphism -- Summary -- Chapter 8: Using the Standard Library Containers -- Working with pairs and tuples -- Containers -- Sequence containers -- List -- Forward list -- Vector -- Deque -- Associative containers -- Maps and multimaps -- Sets and multisets -- Unordered containers -- Special purpose containers -- Using iterators -- Input and output iterators -- Stream iterators -- Using iterators with the C Standard Library -- Algorithms -- Iteration of items. | |
505 | 8 | |a Getting information -- Comparing containers -- Changing Items -- Finding Items -- Sorting items -- Using the numeric libraries -- Compile time arithmetic -- Complex numbers -- Using the Standard Library -- Summary -- Chapter 9: Using Strings -- Using the string class as a container -- Getting information about a string -- Altering strings -- Searching strings -- Internationalization -- Using facets -- Strings and numbers -- Converting strings to numbers -- Converting numbers to strings -- Using stream classes -- Outputting floating point numbers -- Outputting integers -- Outputting time and money -- Converting numbers to strings using streams -- Reading numbers from strings using streams -- Using regular expressions -- Defining regular expressions -- Standard Library classes -- Matching expressions -- Using iterators -- Replacing strings -- Using strings -- Creating the project -- Processing header subitems -- Summary -- Chapter 10: Diagnostics and Debugging -- Preparing your code -- Invariants and conditions -- Conditional compilation -- Using pragmas -- Adding informational messages -- Compiler switches for debugging -- Pre-processor symbols -- Producing diagnostic messages -- Trace messages with the C runtime -- Tracing messages with Windows -- Using asserts -- Application termination -- Error values -- Obtaining message descriptions -- Using the Message Compiler -- C++ exceptions -- Exception specifications -- C++ exception syntax -- Standard exception classes -- Catching exceptions by type -- Function try blocks -- System errors -- Nested exceptions -- Structured Exception Handling -- Compiler exception switches -- Mixing C++ and SEH exception handling -- Writing exception-safe classes -- Summary -- Index. | |
650 | 0 | |a C++ (Computer program language) |0 http://id.loc.gov/authorities/subjects/sh87007505 | |
650 | 6 | |a C++ (Langage de programmation) | |
650 | 7 | |a COMPUTERS / Programming Languages / C++. |2 bisacsh | |
650 | 7 | |a C++ (Computer program language) |2 fast | |
856 | 4 | 0 | |l FWS01 |p ZDB-4-EBA |q FWS_PDA_EBA |u https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=1508102 |3 Volltext |
938 | |a Internet Archive |b INAR |n beginningcprogra0000grim | ||
938 | |a Askews and Holts Library Services |b ASKH |n AH31954927 | ||
938 | |a ProQuest MyiLibrary Digital eBook Collection |b IDEB |n cis36923371 | ||
938 | |a EBSCOhost |b EBSC |n 1508102 | ||
994 | |a 92 |b GEBAY | ||
912 | |a ZDB-4-EBA | ||
049 | |a DE-863 |
Datensatz im Suchindex
DE-BY-FWS_katkey | ZDB-4-EBA-ocn986525902 |
---|---|
_version_ | 1816882388465090560 |
adam_text | |
any_adam_object | |
author | Grimes, Richard, 1964- |
author_GND | http://id.loc.gov/authorities/names/no99009537 |
author_facet | Grimes, Richard, 1964- |
author_role | aut |
author_sort | Grimes, Richard, 1964- |
author_variant | r g rg |
building | Verbundindex |
bvnumber | localFWS |
callnumber-first | Q - Science |
callnumber-label | QA76 |
callnumber-raw | QA76.73.C153 |
callnumber-search | QA76.73.C153 |
callnumber-sort | QA 276.73 C153 |
callnumber-subject | QA - Mathematics |
collection | ZDB-4-EBA |
contents | Cover -- Credits -- About the Author -- About the Reviewer -- www.PacktPub.com -- Customer Feedback -- Table of Contents -- Preface -- Chapter 1: Starting with C++ -- What will you find in this chapter? -- What is C++? -- Installing Visual C++ -- Setting up -- Downloading the installation files -- Installing Visual Studio -- Registering with Microsoft -- Examining C++ projects -- Compilers -- Linking the code -- Source files -- A simple example -- Creating source files -- Compiling the code -- Passing parameters between the command-line and an executable -- The preprocessor and symbols -- Defining constants -- Using macros -- Using symbols -- Using pragmas -- Dependencies -- Libraries -- Pre-compiled headers -- Project structure -- Managing dependencies -- Makefiles -- Writing a simple project -- The project structure -- Creating the precompiled header -- Creating the main file -- Using input and output streams -- Using time functions -- Building the executable -- Testing the code -- Changing the project -- Summary -- Chapter 2: Understanding Language Features -- Writing C++ -- Using white space -- Formatting code -- Writing statements -- Working with expressions -- Using the comma operator -- Using types and variables -- Using constants and literals -- Defining constants -- Using constant expressions -- Using enumerations -- Declaring pointers -- Using namespaces -- C++ scoping of variables -- Using operators -- Exploring the built-in operators -- Arithmetic operators -- Increment and decrement operators -- Bitwise operators -- Boolean operators -- Bitwise shift operators -- Assignment operators -- Controlling execution flow -- Using conditional statements -- Selecting -- Looping -- Looping with iteration -- Conditional loops -- Jumping -- Using C++ language features -- Summary -- Chapter 3: Exploring C++ Types -- Exploring built-in types. Integers -- Specifying integer literals -- Using bitset to show bit patterns -- Determining integer byte order -- Floating point types -- Specifying floating point literals -- Characters and strings -- Character types -- Using character macros -- Specifying character literals -- Specifying string literals -- Unicode literals -- Raw strings -- String byte order -- Boolean -- void -- Initializers -- Default values -- Declarations without a type -- Storage classes -- Using type aliases -- Aggregating data in record types -- Structures -- Initializing -- Structure fields -- Using structure names -- Determining alignment -- Storing data in the same memory with unions -- Accessing runtime type information -- Determining type limits -- Converting between types -- Type conversions -- Promoting conversions -- Narrowing conversions -- Narrowing to bool -- Converting signed types -- Casting -- Casting away const-ness -- Casting without runtime checks -- Casting pointers without runtime checks -- Casting with runtime checks -- Casting with list initializer -- Using C casts -- Using C++ types -- Summary -- Chapter 4: Working with Memory, Arrays, and Pointers -- Using memory in C++ -- Using C++ pointer syntax -- Using null pointers -- Types of memory -- Pointer arithmetic -- Using arrays -- Function parameters -- Multidimensional arrays -- Passing multidimensional arrays to functions -- Using arrays of characters -- Comparing strings -- Preventing buffer overruns -- Using pointers in C++ -- Accessing out of bounds -- Pointers to deallocated memory -- Converting pointers -- Constant pointers -- Changing the type pointed to -- Allocating memory in code -- Allocating individual objects -- Allocating arrays of objects -- Handling failed allocations -- Using other versions of the new operator -- Memory lifetime -- The Windows SDK and pointers. Memory and the C++ Standard Library -- Standard Library arrays -- Using the stack-based array class -- Using the dynamically allocated vector class -- References -- Constant references -- Returning references -- Temporaries and references -- The rvalue references -- Ranged for and references -- Using pointers in practice -- Creating the project -- Adding a task object to the list -- Deleting the task list -- Iterating the task list -- Inserting items -- Summary -- Chapter 5: Using Functions -- Defining C++ functions -- Declaring and defining functions -- Specifying linkage -- Inlining -- Determining the return type -- Naming the function -- Function parameters -- Specifying exceptions -- Function body -- Using function parameters -- Passing Initializer lists -- Using default parameters -- Variable number of parameters -- Initializer lists -- Argument lists -- Function features -- Call stack -- Specifying calling conventions -- Using C linkage -- Specifying how the stack Is maintained -- Using recursion -- Overloading functions -- Functions and scope -- Deleted functions -- Passing by value and passing by reference -- Designing functions -- Pre- and post-conditions -- Using invariants -- Function pointers -- Remember the parentheses! -- Declaring function pointers -- Using function pointers -- Templated functions -- Defining templates -- Using template parameter values -- Specialized templates -- Variadic templates -- Overloaded operators -- Function objects -- Introducing lambda expressions -- Using functions in C++ -- Summary -- Chapter 6: Classes -- Writing classes -- Reviewing structures -- Defining classes -- Defining class behavior -- Using the this pointer -- Using the scope resolution operator -- Defining class state -- Creating objects -- Construction of objects -- Defining constructors -- Delegating constructors -- Copy constructor. Converting between types -- Making friends -- Marking constructors as explicit -- Destructing objects -- Assigning objects -- Move semantics -- Declaring static members -- Defining static members -- Using static and global objects -- Named constructors -- Nested classes -- Accessing const objects -- Using objects with pointers -- Getting pointers to object members -- Operator overloading -- Defining function classes -- Defining conversion operators -- Managing resources -- Writing wrapper classes -- Using smart pointers -- Managing exclusive ownership -- Sharing ownership -- Handling dangling pointers -- Templates -- Using classes -- Summary -- Chapter 7: Introduction to Object-Orientated Programming -- Inheritance and composition -- Inheriting from a class -- Overriding methods and hiding names -- Using pointers and references -- Access levels -- Changing access level through inheritance -- Inheritance access levels -- Multiple inheritance -- Object slicing -- Introducing polymorphism -- Virtual methods -- Virtual method tables -- Multiple inheritance and virtual method tables -- Virtual methods, construction, and destruction -- Containers and virtual methods -- Friends and inheritance -- Override and final -- Virtual inheritance -- Abstract classes -- Obtaining type information -- Smart pointers and virtual methods -- Interfaces -- Class relationships -- Using mixin classes -- Using polymorphism -- Summary -- Chapter 8: Using the Standard Library Containers -- Working with pairs and tuples -- Containers -- Sequence containers -- List -- Forward list -- Vector -- Deque -- Associative containers -- Maps and multimaps -- Sets and multisets -- Unordered containers -- Special purpose containers -- Using iterators -- Input and output iterators -- Stream iterators -- Using iterators with the C Standard Library -- Algorithms -- Iteration of items. Getting information -- Comparing containers -- Changing Items -- Finding Items -- Sorting items -- Using the numeric libraries -- Compile time arithmetic -- Complex numbers -- Using the Standard Library -- Summary -- Chapter 9: Using Strings -- Using the string class as a container -- Getting information about a string -- Altering strings -- Searching strings -- Internationalization -- Using facets -- Strings and numbers -- Converting strings to numbers -- Converting numbers to strings -- Using stream classes -- Outputting floating point numbers -- Outputting integers -- Outputting time and money -- Converting numbers to strings using streams -- Reading numbers from strings using streams -- Using regular expressions -- Defining regular expressions -- Standard Library classes -- Matching expressions -- Using iterators -- Replacing strings -- Using strings -- Creating the project -- Processing header subitems -- Summary -- Chapter 10: Diagnostics and Debugging -- Preparing your code -- Invariants and conditions -- Conditional compilation -- Using pragmas -- Adding informational messages -- Compiler switches for debugging -- Pre-processor symbols -- Producing diagnostic messages -- Trace messages with the C runtime -- Tracing messages with Windows -- Using asserts -- Application termination -- Error values -- Obtaining message descriptions -- Using the Message Compiler -- C++ exceptions -- Exception specifications -- C++ exception syntax -- Standard exception classes -- Catching exceptions by type -- Function try blocks -- System errors -- Nested exceptions -- Structured Exception Handling -- Compiler exception switches -- Mixing C++ and SEH exception handling -- Writing exception-safe classes -- Summary -- Index. |
ctrlnum | (OCoLC)986525902 |
dewey-full | 005.1/33 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.1/33 |
dewey-search | 005.1/33 |
dewey-sort | 15.1 233 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
format | Electronic eBook |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>14084cam a2200553 i 4500</leader><controlfield tag="001">ZDB-4-EBA-ocn986525902</controlfield><controlfield tag="003">OCoLC</controlfield><controlfield tag="005">20241004212047.0</controlfield><controlfield tag="006">m o d </controlfield><controlfield tag="007">cr unu||||||||</controlfield><controlfield tag="008">170510s2017 enka o 000 0 eng d</controlfield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">UMI</subfield><subfield code="b">eng</subfield><subfield code="e">rda</subfield><subfield code="e">pn</subfield><subfield code="c">UMI</subfield><subfield code="d">IDEBK</subfield><subfield code="d">STF</subfield><subfield code="d">TOH</subfield><subfield code="d">TEFOD</subfield><subfield code="d">OCLCF</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">CHVBK</subfield><subfield code="d">COO</subfield><subfield code="d">N$T</subfield><subfield code="d">OCLCO</subfield><subfield code="d">UOK</subfield><subfield code="d">CEF</subfield><subfield code="d">KSU</subfield><subfield code="d">UKMGB</subfield><subfield code="d">WYU</subfield><subfield code="d">ZCU</subfield><subfield code="d">UAB</subfield><subfield code="d">UKAHL</subfield><subfield code="d">RDF</subfield><subfield code="d">UKOBU</subfield><subfield code="d">QGK</subfield><subfield code="d">OCLCO</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">OCLCO</subfield><subfield code="d">INARC</subfield><subfield code="d">OCLCL</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">OCLCL</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">DXU</subfield><subfield code="d">OCLCQ</subfield></datafield><datafield tag="015" ind1=" " ind2=" "><subfield code="a">GBB790384</subfield><subfield code="2">bnb</subfield></datafield><datafield tag="016" ind1="7" ind2=" "><subfield code="a">018354703</subfield><subfield code="2">Uk</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781787129283</subfield><subfield code="q">(electronic bk.)</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">1787129284</subfield><subfield code="q">(electronic bk.)</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="z">9781787124943</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)986525902</subfield></datafield><datafield tag="037" ind1=" " ind2=" "><subfield code="a">CL0500000857</subfield><subfield code="b">Safari Books Online</subfield></datafield><datafield tag="037" ind1=" " ind2=" "><subfield code="a">9BC94727-9BEC-46C4-9A04-BFBB3DAAACF6</subfield><subfield code="b">OverDrive, Inc.</subfield><subfield code="n">http://www.overdrive.com</subfield></datafield><datafield tag="050" ind1=" " ind2="4"><subfield code="a">QA76.73.C153</subfield></datafield><datafield tag="072" ind1=" " ind2="7"><subfield code="a">COM</subfield><subfield code="x">051070</subfield><subfield code="2">bisacsh</subfield></datafield><datafield tag="082" ind1="7" ind2=" "><subfield code="a">005.1/33</subfield><subfield code="2">23</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">MAIN</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Grimes, Richard,</subfield><subfield code="d">1964-</subfield><subfield code="e">author.</subfield><subfield code="1">https://id.oclc.org/worldcat/entity/E39PCjtKfgkhbHCyDrqywv8f7b</subfield><subfield code="0">http://id.loc.gov/authorities/names/no99009537</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Beginning C++ programming :</subfield><subfield code="b">this is the start of your journey into the most powerful language available to the programming public /</subfield><subfield code="c">Richard Grimes.</subfield></datafield><datafield tag="246" ind1="1" ind2="3"><subfield code="a">Beginning C plus plus programming</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Birmingham, UK :</subfield><subfield code="b">Packt Publishing,</subfield><subfield code="c">2017.</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">1 online resource (1 volume) :</subfield><subfield code="b">illustrations</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="a">text</subfield><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="a">computer</subfield><subfield code="b">c</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="a">online resource</subfield><subfield code="b">cr</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="588" ind1="0" ind2=" "><subfield code="a">Online resource; title from PDF title page (EBSCO, viewed February 27, 2018)</subfield></datafield><datafield tag="520" ind1=" " ind2=" "><subfield code="a">Modern C++ at your fingertips! About This Book This book gets you started with the exciting world of C++ programming It will enable you to write C++ code that uses the standard library, has a level of object orientation, and uses memory in a safe and effective way It forms the basis of programming and covers concepts such as data structures and the core programming language Who This Book Is For A computer, an internet connection, and the desire to learn how to code in C++ is all you need to get started with this book. What You Will Learn Get familiar with the structure of C++ projects Identify the main structures in the language: functions and classes Feel confident about being able to identify the execution flow through the code Be aware of the facilities of the standard library Gain insights into the basic concepts of object orientation Know how to debug your programs Get acquainted with the standard C++ library In Detail C++ has come a long way and is now adopted in several contexts. Its key strengths are its software infrastructure and resource-constrained applications, including desktop applications, servers, and performance-critical applications, not to forget its importance in game programming. Despite its strengths in these areas, beginners usually tend to shy away from learning the language because of its steep learning curve. The main mission of this book is to make you familiar and comfortable with C++. You will finish the book not only being able to write your own code, but more importantly, you will be able to read other projects. It is only by being able to read others' code that you will progress from a beginner to an advanced programmer. This book is the first step in that progression. The first task is to familiarize you with the structure of C++ projects so you will know how to start reading a project. Next, you will be able to identify the main structures in the language, functions, and classes, and feel confident being able to identify the execution flow through the code. You will then become aware of the facilities of the standard library and be able to determine whether you need to write a routine yourself, or use an existing routine in the standard library. Throughout the book, there is a big emphasis on memory and pointers. You will understand memory usage, allocation, and access, and be able to write code that does not leak memory. Finally, you will learn about C++ classes and get an introduction to object orientation ...</subfield></datafield><datafield tag="505" ind1="0" ind2=" "><subfield code="a">Cover -- Credits -- About the Author -- About the Reviewer -- www.PacktPub.com -- Customer Feedback -- Table of Contents -- Preface -- Chapter 1: Starting with C++ -- What will you find in this chapter? -- What is C++? -- Installing Visual C++ -- Setting up -- Downloading the installation files -- Installing Visual Studio -- Registering with Microsoft -- Examining C++ projects -- Compilers -- Linking the code -- Source files -- A simple example -- Creating source files -- Compiling the code -- Passing parameters between the command-line and an executable -- The preprocessor and symbols -- Defining constants -- Using macros -- Using symbols -- Using pragmas -- Dependencies -- Libraries -- Pre-compiled headers -- Project structure -- Managing dependencies -- Makefiles -- Writing a simple project -- The project structure -- Creating the precompiled header -- Creating the main file -- Using input and output streams -- Using time functions -- Building the executable -- Testing the code -- Changing the project -- Summary -- Chapter 2: Understanding Language Features -- Writing C++ -- Using white space -- Formatting code -- Writing statements -- Working with expressions -- Using the comma operator -- Using types and variables -- Using constants and literals -- Defining constants -- Using constant expressions -- Using enumerations -- Declaring pointers -- Using namespaces -- C++ scoping of variables -- Using operators -- Exploring the built-in operators -- Arithmetic operators -- Increment and decrement operators -- Bitwise operators -- Boolean operators -- Bitwise shift operators -- Assignment operators -- Controlling execution flow -- Using conditional statements -- Selecting -- Looping -- Looping with iteration -- Conditional loops -- Jumping -- Using C++ language features -- Summary -- Chapter 3: Exploring C++ Types -- Exploring built-in types.</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Integers -- Specifying integer literals -- Using bitset to show bit patterns -- Determining integer byte order -- Floating point types -- Specifying floating point literals -- Characters and strings -- Character types -- Using character macros -- Specifying character literals -- Specifying string literals -- Unicode literals -- Raw strings -- String byte order -- Boolean -- void -- Initializers -- Default values -- Declarations without a type -- Storage classes -- Using type aliases -- Aggregating data in record types -- Structures -- Initializing -- Structure fields -- Using structure names -- Determining alignment -- Storing data in the same memory with unions -- Accessing runtime type information -- Determining type limits -- Converting between types -- Type conversions -- Promoting conversions -- Narrowing conversions -- Narrowing to bool -- Converting signed types -- Casting -- Casting away const-ness -- Casting without runtime checks -- Casting pointers without runtime checks -- Casting with runtime checks -- Casting with list initializer -- Using C casts -- Using C++ types -- Summary -- Chapter 4: Working with Memory, Arrays, and Pointers -- Using memory in C++ -- Using C++ pointer syntax -- Using null pointers -- Types of memory -- Pointer arithmetic -- Using arrays -- Function parameters -- Multidimensional arrays -- Passing multidimensional arrays to functions -- Using arrays of characters -- Comparing strings -- Preventing buffer overruns -- Using pointers in C++ -- Accessing out of bounds -- Pointers to deallocated memory -- Converting pointers -- Constant pointers -- Changing the type pointed to -- Allocating memory in code -- Allocating individual objects -- Allocating arrays of objects -- Handling failed allocations -- Using other versions of the new operator -- Memory lifetime -- The Windows SDK and pointers.</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Memory and the C++ Standard Library -- Standard Library arrays -- Using the stack-based array class -- Using the dynamically allocated vector class -- References -- Constant references -- Returning references -- Temporaries and references -- The rvalue references -- Ranged for and references -- Using pointers in practice -- Creating the project -- Adding a task object to the list -- Deleting the task list -- Iterating the task list -- Inserting items -- Summary -- Chapter 5: Using Functions -- Defining C++ functions -- Declaring and defining functions -- Specifying linkage -- Inlining -- Determining the return type -- Naming the function -- Function parameters -- Specifying exceptions -- Function body -- Using function parameters -- Passing Initializer lists -- Using default parameters -- Variable number of parameters -- Initializer lists -- Argument lists -- Function features -- Call stack -- Specifying calling conventions -- Using C linkage -- Specifying how the stack Is maintained -- Using recursion -- Overloading functions -- Functions and scope -- Deleted functions -- Passing by value and passing by reference -- Designing functions -- Pre- and post-conditions -- Using invariants -- Function pointers -- Remember the parentheses! -- Declaring function pointers -- Using function pointers -- Templated functions -- Defining templates -- Using template parameter values -- Specialized templates -- Variadic templates -- Overloaded operators -- Function objects -- Introducing lambda expressions -- Using functions in C++ -- Summary -- Chapter 6: Classes -- Writing classes -- Reviewing structures -- Defining classes -- Defining class behavior -- Using the this pointer -- Using the scope resolution operator -- Defining class state -- Creating objects -- Construction of objects -- Defining constructors -- Delegating constructors -- Copy constructor.</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Converting between types -- Making friends -- Marking constructors as explicit -- Destructing objects -- Assigning objects -- Move semantics -- Declaring static members -- Defining static members -- Using static and global objects -- Named constructors -- Nested classes -- Accessing const objects -- Using objects with pointers -- Getting pointers to object members -- Operator overloading -- Defining function classes -- Defining conversion operators -- Managing resources -- Writing wrapper classes -- Using smart pointers -- Managing exclusive ownership -- Sharing ownership -- Handling dangling pointers -- Templates -- Using classes -- Summary -- Chapter 7: Introduction to Object-Orientated Programming -- Inheritance and composition -- Inheriting from a class -- Overriding methods and hiding names -- Using pointers and references -- Access levels -- Changing access level through inheritance -- Inheritance access levels -- Multiple inheritance -- Object slicing -- Introducing polymorphism -- Virtual methods -- Virtual method tables -- Multiple inheritance and virtual method tables -- Virtual methods, construction, and destruction -- Containers and virtual methods -- Friends and inheritance -- Override and final -- Virtual inheritance -- Abstract classes -- Obtaining type information -- Smart pointers and virtual methods -- Interfaces -- Class relationships -- Using mixin classes -- Using polymorphism -- Summary -- Chapter 8: Using the Standard Library Containers -- Working with pairs and tuples -- Containers -- Sequence containers -- List -- Forward list -- Vector -- Deque -- Associative containers -- Maps and multimaps -- Sets and multisets -- Unordered containers -- Special purpose containers -- Using iterators -- Input and output iterators -- Stream iterators -- Using iterators with the C Standard Library -- Algorithms -- Iteration of items.</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">Getting information -- Comparing containers -- Changing Items -- Finding Items -- Sorting items -- Using the numeric libraries -- Compile time arithmetic -- Complex numbers -- Using the Standard Library -- Summary -- Chapter 9: Using Strings -- Using the string class as a container -- Getting information about a string -- Altering strings -- Searching strings -- Internationalization -- Using facets -- Strings and numbers -- Converting strings to numbers -- Converting numbers to strings -- Using stream classes -- Outputting floating point numbers -- Outputting integers -- Outputting time and money -- Converting numbers to strings using streams -- Reading numbers from strings using streams -- Using regular expressions -- Defining regular expressions -- Standard Library classes -- Matching expressions -- Using iterators -- Replacing strings -- Using strings -- Creating the project -- Processing header subitems -- Summary -- Chapter 10: Diagnostics and Debugging -- Preparing your code -- Invariants and conditions -- Conditional compilation -- Using pragmas -- Adding informational messages -- Compiler switches for debugging -- Pre-processor symbols -- Producing diagnostic messages -- Trace messages with the C runtime -- Tracing messages with Windows -- Using asserts -- Application termination -- Error values -- Obtaining message descriptions -- Using the Message Compiler -- C++ exceptions -- Exception specifications -- C++ exception syntax -- Standard exception classes -- Catching exceptions by type -- Function try blocks -- System errors -- Nested exceptions -- Structured Exception Handling -- Compiler exception switches -- Mixing C++ and SEH exception handling -- Writing exception-safe classes -- Summary -- Index.</subfield></datafield><datafield tag="650" ind1=" " ind2="0"><subfield code="a">C++ (Computer program language)</subfield><subfield code="0">http://id.loc.gov/authorities/subjects/sh87007505</subfield></datafield><datafield tag="650" ind1=" " ind2="6"><subfield code="a">C++ (Langage de programmation)</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">COMPUTERS / Programming Languages / C++.</subfield><subfield code="2">bisacsh</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">C++ (Computer program language)</subfield><subfield code="2">fast</subfield></datafield><datafield tag="856" ind1="4" ind2="0"><subfield code="l">FWS01</subfield><subfield code="p">ZDB-4-EBA</subfield><subfield code="q">FWS_PDA_EBA</subfield><subfield code="u">https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=1508102</subfield><subfield code="3">Volltext</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">Internet Archive</subfield><subfield code="b">INAR</subfield><subfield code="n">beginningcprogra0000grim</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">Askews and Holts Library Services</subfield><subfield code="b">ASKH</subfield><subfield code="n">AH31954927</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">ProQuest MyiLibrary Digital eBook Collection</subfield><subfield code="b">IDEB</subfield><subfield code="n">cis36923371</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">EBSCOhost</subfield><subfield code="b">EBSC</subfield><subfield code="n">1508102</subfield></datafield><datafield tag="994" ind1=" " ind2=" "><subfield code="a">92</subfield><subfield code="b">GEBAY</subfield></datafield><datafield tag="912" ind1=" " ind2=" "><subfield code="a">ZDB-4-EBA</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-863</subfield></datafield></record></collection> |
id | ZDB-4-EBA-ocn986525902 |
illustrated | Illustrated |
indexdate | 2024-11-27T13:27:49Z |
institution | BVB |
isbn | 9781787129283 1787129284 |
language | English |
oclc_num | 986525902 |
open_access_boolean | |
owner | MAIN DE-863 DE-BY-FWS |
owner_facet | MAIN DE-863 DE-BY-FWS |
physical | 1 online resource (1 volume) : illustrations |
psigel | ZDB-4-EBA |
publishDate | 2017 |
publishDateSearch | 2017 |
publishDateSort | 2017 |
publisher | Packt Publishing, |
record_format | marc |
spelling | Grimes, Richard, 1964- author. https://id.oclc.org/worldcat/entity/E39PCjtKfgkhbHCyDrqywv8f7b http://id.loc.gov/authorities/names/no99009537 Beginning C++ programming : this is the start of your journey into the most powerful language available to the programming public / Richard Grimes. Beginning C plus plus programming Birmingham, UK : Packt Publishing, 2017. 1 online resource (1 volume) : illustrations text txt rdacontent computer c rdamedia online resource cr rdacarrier Online resource; title from PDF title page (EBSCO, viewed February 27, 2018) Modern C++ at your fingertips! About This Book This book gets you started with the exciting world of C++ programming It will enable you to write C++ code that uses the standard library, has a level of object orientation, and uses memory in a safe and effective way It forms the basis of programming and covers concepts such as data structures and the core programming language Who This Book Is For A computer, an internet connection, and the desire to learn how to code in C++ is all you need to get started with this book. What You Will Learn Get familiar with the structure of C++ projects Identify the main structures in the language: functions and classes Feel confident about being able to identify the execution flow through the code Be aware of the facilities of the standard library Gain insights into the basic concepts of object orientation Know how to debug your programs Get acquainted with the standard C++ library In Detail C++ has come a long way and is now adopted in several contexts. Its key strengths are its software infrastructure and resource-constrained applications, including desktop applications, servers, and performance-critical applications, not to forget its importance in game programming. Despite its strengths in these areas, beginners usually tend to shy away from learning the language because of its steep learning curve. The main mission of this book is to make you familiar and comfortable with C++. You will finish the book not only being able to write your own code, but more importantly, you will be able to read other projects. It is only by being able to read others' code that you will progress from a beginner to an advanced programmer. This book is the first step in that progression. The first task is to familiarize you with the structure of C++ projects so you will know how to start reading a project. Next, you will be able to identify the main structures in the language, functions, and classes, and feel confident being able to identify the execution flow through the code. You will then become aware of the facilities of the standard library and be able to determine whether you need to write a routine yourself, or use an existing routine in the standard library. Throughout the book, there is a big emphasis on memory and pointers. You will understand memory usage, allocation, and access, and be able to write code that does not leak memory. Finally, you will learn about C++ classes and get an introduction to object orientation ... Cover -- Credits -- About the Author -- About the Reviewer -- www.PacktPub.com -- Customer Feedback -- Table of Contents -- Preface -- Chapter 1: Starting with C++ -- What will you find in this chapter? -- What is C++? -- Installing Visual C++ -- Setting up -- Downloading the installation files -- Installing Visual Studio -- Registering with Microsoft -- Examining C++ projects -- Compilers -- Linking the code -- Source files -- A simple example -- Creating source files -- Compiling the code -- Passing parameters between the command-line and an executable -- The preprocessor and symbols -- Defining constants -- Using macros -- Using symbols -- Using pragmas -- Dependencies -- Libraries -- Pre-compiled headers -- Project structure -- Managing dependencies -- Makefiles -- Writing a simple project -- The project structure -- Creating the precompiled header -- Creating the main file -- Using input and output streams -- Using time functions -- Building the executable -- Testing the code -- Changing the project -- Summary -- Chapter 2: Understanding Language Features -- Writing C++ -- Using white space -- Formatting code -- Writing statements -- Working with expressions -- Using the comma operator -- Using types and variables -- Using constants and literals -- Defining constants -- Using constant expressions -- Using enumerations -- Declaring pointers -- Using namespaces -- C++ scoping of variables -- Using operators -- Exploring the built-in operators -- Arithmetic operators -- Increment and decrement operators -- Bitwise operators -- Boolean operators -- Bitwise shift operators -- Assignment operators -- Controlling execution flow -- Using conditional statements -- Selecting -- Looping -- Looping with iteration -- Conditional loops -- Jumping -- Using C++ language features -- Summary -- Chapter 3: Exploring C++ Types -- Exploring built-in types. Integers -- Specifying integer literals -- Using bitset to show bit patterns -- Determining integer byte order -- Floating point types -- Specifying floating point literals -- Characters and strings -- Character types -- Using character macros -- Specifying character literals -- Specifying string literals -- Unicode literals -- Raw strings -- String byte order -- Boolean -- void -- Initializers -- Default values -- Declarations without a type -- Storage classes -- Using type aliases -- Aggregating data in record types -- Structures -- Initializing -- Structure fields -- Using structure names -- Determining alignment -- Storing data in the same memory with unions -- Accessing runtime type information -- Determining type limits -- Converting between types -- Type conversions -- Promoting conversions -- Narrowing conversions -- Narrowing to bool -- Converting signed types -- Casting -- Casting away const-ness -- Casting without runtime checks -- Casting pointers without runtime checks -- Casting with runtime checks -- Casting with list initializer -- Using C casts -- Using C++ types -- Summary -- Chapter 4: Working with Memory, Arrays, and Pointers -- Using memory in C++ -- Using C++ pointer syntax -- Using null pointers -- Types of memory -- Pointer arithmetic -- Using arrays -- Function parameters -- Multidimensional arrays -- Passing multidimensional arrays to functions -- Using arrays of characters -- Comparing strings -- Preventing buffer overruns -- Using pointers in C++ -- Accessing out of bounds -- Pointers to deallocated memory -- Converting pointers -- Constant pointers -- Changing the type pointed to -- Allocating memory in code -- Allocating individual objects -- Allocating arrays of objects -- Handling failed allocations -- Using other versions of the new operator -- Memory lifetime -- The Windows SDK and pointers. Memory and the C++ Standard Library -- Standard Library arrays -- Using the stack-based array class -- Using the dynamically allocated vector class -- References -- Constant references -- Returning references -- Temporaries and references -- The rvalue references -- Ranged for and references -- Using pointers in practice -- Creating the project -- Adding a task object to the list -- Deleting the task list -- Iterating the task list -- Inserting items -- Summary -- Chapter 5: Using Functions -- Defining C++ functions -- Declaring and defining functions -- Specifying linkage -- Inlining -- Determining the return type -- Naming the function -- Function parameters -- Specifying exceptions -- Function body -- Using function parameters -- Passing Initializer lists -- Using default parameters -- Variable number of parameters -- Initializer lists -- Argument lists -- Function features -- Call stack -- Specifying calling conventions -- Using C linkage -- Specifying how the stack Is maintained -- Using recursion -- Overloading functions -- Functions and scope -- Deleted functions -- Passing by value and passing by reference -- Designing functions -- Pre- and post-conditions -- Using invariants -- Function pointers -- Remember the parentheses! -- Declaring function pointers -- Using function pointers -- Templated functions -- Defining templates -- Using template parameter values -- Specialized templates -- Variadic templates -- Overloaded operators -- Function objects -- Introducing lambda expressions -- Using functions in C++ -- Summary -- Chapter 6: Classes -- Writing classes -- Reviewing structures -- Defining classes -- Defining class behavior -- Using the this pointer -- Using the scope resolution operator -- Defining class state -- Creating objects -- Construction of objects -- Defining constructors -- Delegating constructors -- Copy constructor. Converting between types -- Making friends -- Marking constructors as explicit -- Destructing objects -- Assigning objects -- Move semantics -- Declaring static members -- Defining static members -- Using static and global objects -- Named constructors -- Nested classes -- Accessing const objects -- Using objects with pointers -- Getting pointers to object members -- Operator overloading -- Defining function classes -- Defining conversion operators -- Managing resources -- Writing wrapper classes -- Using smart pointers -- Managing exclusive ownership -- Sharing ownership -- Handling dangling pointers -- Templates -- Using classes -- Summary -- Chapter 7: Introduction to Object-Orientated Programming -- Inheritance and composition -- Inheriting from a class -- Overriding methods and hiding names -- Using pointers and references -- Access levels -- Changing access level through inheritance -- Inheritance access levels -- Multiple inheritance -- Object slicing -- Introducing polymorphism -- Virtual methods -- Virtual method tables -- Multiple inheritance and virtual method tables -- Virtual methods, construction, and destruction -- Containers and virtual methods -- Friends and inheritance -- Override and final -- Virtual inheritance -- Abstract classes -- Obtaining type information -- Smart pointers and virtual methods -- Interfaces -- Class relationships -- Using mixin classes -- Using polymorphism -- Summary -- Chapter 8: Using the Standard Library Containers -- Working with pairs and tuples -- Containers -- Sequence containers -- List -- Forward list -- Vector -- Deque -- Associative containers -- Maps and multimaps -- Sets and multisets -- Unordered containers -- Special purpose containers -- Using iterators -- Input and output iterators -- Stream iterators -- Using iterators with the C Standard Library -- Algorithms -- Iteration of items. Getting information -- Comparing containers -- Changing Items -- Finding Items -- Sorting items -- Using the numeric libraries -- Compile time arithmetic -- Complex numbers -- Using the Standard Library -- Summary -- Chapter 9: Using Strings -- Using the string class as a container -- Getting information about a string -- Altering strings -- Searching strings -- Internationalization -- Using facets -- Strings and numbers -- Converting strings to numbers -- Converting numbers to strings -- Using stream classes -- Outputting floating point numbers -- Outputting integers -- Outputting time and money -- Converting numbers to strings using streams -- Reading numbers from strings using streams -- Using regular expressions -- Defining regular expressions -- Standard Library classes -- Matching expressions -- Using iterators -- Replacing strings -- Using strings -- Creating the project -- Processing header subitems -- Summary -- Chapter 10: Diagnostics and Debugging -- Preparing your code -- Invariants and conditions -- Conditional compilation -- Using pragmas -- Adding informational messages -- Compiler switches for debugging -- Pre-processor symbols -- Producing diagnostic messages -- Trace messages with the C runtime -- Tracing messages with Windows -- Using asserts -- Application termination -- Error values -- Obtaining message descriptions -- Using the Message Compiler -- C++ exceptions -- Exception specifications -- C++ exception syntax -- Standard exception classes -- Catching exceptions by type -- Function try blocks -- System errors -- Nested exceptions -- Structured Exception Handling -- Compiler exception switches -- Mixing C++ and SEH exception handling -- Writing exception-safe classes -- Summary -- Index. C++ (Computer program language) http://id.loc.gov/authorities/subjects/sh87007505 C++ (Langage de programmation) COMPUTERS / Programming Languages / C++. bisacsh C++ (Computer program language) fast FWS01 ZDB-4-EBA FWS_PDA_EBA https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=1508102 Volltext |
spellingShingle | Grimes, Richard, 1964- Beginning C++ programming : this is the start of your journey into the most powerful language available to the programming public / Cover -- Credits -- About the Author -- About the Reviewer -- www.PacktPub.com -- Customer Feedback -- Table of Contents -- Preface -- Chapter 1: Starting with C++ -- What will you find in this chapter? -- What is C++? -- Installing Visual C++ -- Setting up -- Downloading the installation files -- Installing Visual Studio -- Registering with Microsoft -- Examining C++ projects -- Compilers -- Linking the code -- Source files -- A simple example -- Creating source files -- Compiling the code -- Passing parameters between the command-line and an executable -- The preprocessor and symbols -- Defining constants -- Using macros -- Using symbols -- Using pragmas -- Dependencies -- Libraries -- Pre-compiled headers -- Project structure -- Managing dependencies -- Makefiles -- Writing a simple project -- The project structure -- Creating the precompiled header -- Creating the main file -- Using input and output streams -- Using time functions -- Building the executable -- Testing the code -- Changing the project -- Summary -- Chapter 2: Understanding Language Features -- Writing C++ -- Using white space -- Formatting code -- Writing statements -- Working with expressions -- Using the comma operator -- Using types and variables -- Using constants and literals -- Defining constants -- Using constant expressions -- Using enumerations -- Declaring pointers -- Using namespaces -- C++ scoping of variables -- Using operators -- Exploring the built-in operators -- Arithmetic operators -- Increment and decrement operators -- Bitwise operators -- Boolean operators -- Bitwise shift operators -- Assignment operators -- Controlling execution flow -- Using conditional statements -- Selecting -- Looping -- Looping with iteration -- Conditional loops -- Jumping -- Using C++ language features -- Summary -- Chapter 3: Exploring C++ Types -- Exploring built-in types. Integers -- Specifying integer literals -- Using bitset to show bit patterns -- Determining integer byte order -- Floating point types -- Specifying floating point literals -- Characters and strings -- Character types -- Using character macros -- Specifying character literals -- Specifying string literals -- Unicode literals -- Raw strings -- String byte order -- Boolean -- void -- Initializers -- Default values -- Declarations without a type -- Storage classes -- Using type aliases -- Aggregating data in record types -- Structures -- Initializing -- Structure fields -- Using structure names -- Determining alignment -- Storing data in the same memory with unions -- Accessing runtime type information -- Determining type limits -- Converting between types -- Type conversions -- Promoting conversions -- Narrowing conversions -- Narrowing to bool -- Converting signed types -- Casting -- Casting away const-ness -- Casting without runtime checks -- Casting pointers without runtime checks -- Casting with runtime checks -- Casting with list initializer -- Using C casts -- Using C++ types -- Summary -- Chapter 4: Working with Memory, Arrays, and Pointers -- Using memory in C++ -- Using C++ pointer syntax -- Using null pointers -- Types of memory -- Pointer arithmetic -- Using arrays -- Function parameters -- Multidimensional arrays -- Passing multidimensional arrays to functions -- Using arrays of characters -- Comparing strings -- Preventing buffer overruns -- Using pointers in C++ -- Accessing out of bounds -- Pointers to deallocated memory -- Converting pointers -- Constant pointers -- Changing the type pointed to -- Allocating memory in code -- Allocating individual objects -- Allocating arrays of objects -- Handling failed allocations -- Using other versions of the new operator -- Memory lifetime -- The Windows SDK and pointers. Memory and the C++ Standard Library -- Standard Library arrays -- Using the stack-based array class -- Using the dynamically allocated vector class -- References -- Constant references -- Returning references -- Temporaries and references -- The rvalue references -- Ranged for and references -- Using pointers in practice -- Creating the project -- Adding a task object to the list -- Deleting the task list -- Iterating the task list -- Inserting items -- Summary -- Chapter 5: Using Functions -- Defining C++ functions -- Declaring and defining functions -- Specifying linkage -- Inlining -- Determining the return type -- Naming the function -- Function parameters -- Specifying exceptions -- Function body -- Using function parameters -- Passing Initializer lists -- Using default parameters -- Variable number of parameters -- Initializer lists -- Argument lists -- Function features -- Call stack -- Specifying calling conventions -- Using C linkage -- Specifying how the stack Is maintained -- Using recursion -- Overloading functions -- Functions and scope -- Deleted functions -- Passing by value and passing by reference -- Designing functions -- Pre- and post-conditions -- Using invariants -- Function pointers -- Remember the parentheses! -- Declaring function pointers -- Using function pointers -- Templated functions -- Defining templates -- Using template parameter values -- Specialized templates -- Variadic templates -- Overloaded operators -- Function objects -- Introducing lambda expressions -- Using functions in C++ -- Summary -- Chapter 6: Classes -- Writing classes -- Reviewing structures -- Defining classes -- Defining class behavior -- Using the this pointer -- Using the scope resolution operator -- Defining class state -- Creating objects -- Construction of objects -- Defining constructors -- Delegating constructors -- Copy constructor. Converting between types -- Making friends -- Marking constructors as explicit -- Destructing objects -- Assigning objects -- Move semantics -- Declaring static members -- Defining static members -- Using static and global objects -- Named constructors -- Nested classes -- Accessing const objects -- Using objects with pointers -- Getting pointers to object members -- Operator overloading -- Defining function classes -- Defining conversion operators -- Managing resources -- Writing wrapper classes -- Using smart pointers -- Managing exclusive ownership -- Sharing ownership -- Handling dangling pointers -- Templates -- Using classes -- Summary -- Chapter 7: Introduction to Object-Orientated Programming -- Inheritance and composition -- Inheriting from a class -- Overriding methods and hiding names -- Using pointers and references -- Access levels -- Changing access level through inheritance -- Inheritance access levels -- Multiple inheritance -- Object slicing -- Introducing polymorphism -- Virtual methods -- Virtual method tables -- Multiple inheritance and virtual method tables -- Virtual methods, construction, and destruction -- Containers and virtual methods -- Friends and inheritance -- Override and final -- Virtual inheritance -- Abstract classes -- Obtaining type information -- Smart pointers and virtual methods -- Interfaces -- Class relationships -- Using mixin classes -- Using polymorphism -- Summary -- Chapter 8: Using the Standard Library Containers -- Working with pairs and tuples -- Containers -- Sequence containers -- List -- Forward list -- Vector -- Deque -- Associative containers -- Maps and multimaps -- Sets and multisets -- Unordered containers -- Special purpose containers -- Using iterators -- Input and output iterators -- Stream iterators -- Using iterators with the C Standard Library -- Algorithms -- Iteration of items. Getting information -- Comparing containers -- Changing Items -- Finding Items -- Sorting items -- Using the numeric libraries -- Compile time arithmetic -- Complex numbers -- Using the Standard Library -- Summary -- Chapter 9: Using Strings -- Using the string class as a container -- Getting information about a string -- Altering strings -- Searching strings -- Internationalization -- Using facets -- Strings and numbers -- Converting strings to numbers -- Converting numbers to strings -- Using stream classes -- Outputting floating point numbers -- Outputting integers -- Outputting time and money -- Converting numbers to strings using streams -- Reading numbers from strings using streams -- Using regular expressions -- Defining regular expressions -- Standard Library classes -- Matching expressions -- Using iterators -- Replacing strings -- Using strings -- Creating the project -- Processing header subitems -- Summary -- Chapter 10: Diagnostics and Debugging -- Preparing your code -- Invariants and conditions -- Conditional compilation -- Using pragmas -- Adding informational messages -- Compiler switches for debugging -- Pre-processor symbols -- Producing diagnostic messages -- Trace messages with the C runtime -- Tracing messages with Windows -- Using asserts -- Application termination -- Error values -- Obtaining message descriptions -- Using the Message Compiler -- C++ exceptions -- Exception specifications -- C++ exception syntax -- Standard exception classes -- Catching exceptions by type -- Function try blocks -- System errors -- Nested exceptions -- Structured Exception Handling -- Compiler exception switches -- Mixing C++ and SEH exception handling -- Writing exception-safe classes -- Summary -- Index. C++ (Computer program language) http://id.loc.gov/authorities/subjects/sh87007505 C++ (Langage de programmation) COMPUTERS / Programming Languages / C++. bisacsh C++ (Computer program language) fast |
subject_GND | http://id.loc.gov/authorities/subjects/sh87007505 |
title | Beginning C++ programming : this is the start of your journey into the most powerful language available to the programming public / |
title_alt | Beginning C plus plus programming |
title_auth | Beginning C++ programming : this is the start of your journey into the most powerful language available to the programming public / |
title_exact_search | Beginning C++ programming : this is the start of your journey into the most powerful language available to the programming public / |
title_full | Beginning C++ programming : this is the start of your journey into the most powerful language available to the programming public / Richard Grimes. |
title_fullStr | Beginning C++ programming : this is the start of your journey into the most powerful language available to the programming public / Richard Grimes. |
title_full_unstemmed | Beginning C++ programming : this is the start of your journey into the most powerful language available to the programming public / Richard Grimes. |
title_short | Beginning C++ programming : |
title_sort | beginning c programming this is the start of your journey into the most powerful language available to the programming public |
title_sub | this is the start of your journey into the most powerful language available to the programming public / |
topic | C++ (Computer program language) http://id.loc.gov/authorities/subjects/sh87007505 C++ (Langage de programmation) COMPUTERS / Programming Languages / C++. bisacsh C++ (Computer program language) fast |
topic_facet | C++ (Computer program language) C++ (Langage de programmation) COMPUTERS / Programming Languages / C++. |
url | https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=1508102 |
work_keys_str_mv | AT grimesrichard beginningcprogrammingthisisthestartofyourjourneyintothemostpowerfullanguageavailabletotheprogrammingpublic AT grimesrichard beginningcplusplusprogramming |