Capper C++ for Scientists, Engineers and Mathematicians
Erscheinungsjahr 2012
ISBN: 978-1-4471-3368-1
Verlag: Springer
Format: PDF
Kopierschutz: 1 - PDF Watermark
E-Book, Englisch, 502 Seiten, Web PDF
Reihe: Computer Science
ISBN: 978-1-4471-3368-1
Verlag: Springer
Format: PDF
Kopierschutz: 1 - PDF Watermark
C++ is among the most powerful and popular of programming languages for applications. This is an adoptable textbook for undergraduate students who need to use this language for applications that are - in the main - numerical. Most engineering, phys ics, and mathematics degree courses include a computing element: this book should be used where C++ is the chosen language, already the majority of cases. The book is comprehensive and includes advanced features of the language, indicating where they ar e of special interest to the reader. No prior knowledge of C is assumed, and the book's bias towards numerical applications makes it unique in the field.
Zielgruppe
Graduate
Autoren/Hrsg.
Weitere Infos & Material
1 Introduction.- 1.1 Getting Started.- 1.2 Solving a Quadratic Equation.- 1.3 An Object-oriented Example.- 1.4 Why Object-oriented?.- 1.5 Summary.- 1.6 Exercises.- 2 The Lexical Basis of C++.- 2.1 Characters and Tokens.- 2.2 Comments and White Space.- 2.3 Identifiers.- 2.4 Keywords.- 2.5 Constants.- 2.6 Operators.- 2.7 The Preprocessor.- 2.8 Programming Style.- 2.9 Summary.- 2.10 Exercises.- 3 Fundamental Types and Basic Operators.- 3.1 Integral Data Types.- 3.2 Floating Point Data Types.- 3.3 Changing Types.- 3.4 Some Basic Operations.- 3.5 const.- 3.6 register and volatile.- 3.7 typedef.- 3.8 Summary.- 3.9 Exercises.- 4 Control Structure.- 4.1 Relational Operators.- 4.2 Logical Operators.- 4.3 Equal and Not Equal Operators.- 4.4 Blocks and Scope.- 4.5 Branch Statements.- 4.6 Iteration Statements.- 4.7 break and continue Statements.- 4.8 goto Statement.- 4.9 Comma Operator.- 4.10 Null Statement.- 4.11 Conditional Expression Operator.- 4.12 Order of Evaluation of Operands.- 4.13 The Preprocessor.- 4.14 Enumerations.- 4.15 Summary.- 4.16 Exercises.- 5 Functions.- 5.1 Introducing Functions.- 5.2 Recursion.- 5.3 Inline Functions.- 5.4 More on Scope Rules.- 5.5 Storage Classes auto and static.- 5.6 Overloading Function Names.- 5.7 Function main ().- 5.8 Standard Library.- 5.9 Using Functions.- 5.10 Summary.- 5.11 Exercises.- 6 Pointers and Arrays.- 6.1 Memory, Addressing and Pointers.- 6.2 One-dimensional Arrays.- 6.3 Type void*.- 6.4 Pointer Conversions.- 6.5 Multi-dimensional Arrays.- 6.6 Initializing Arrays.- 6.7 Size of Arrays.- 6.8 Arrays of Pointers and Multi-dimensional Arrays.- 6.9 Using Pointers and Arrays.- 6.10 Summary.- 6.11 Exercises.- 7 Further Pointer Techniques.- 7.1 Strings.- 7.2 Pointers as Function Arguments.- 7.3 Passing Arrays as Function Arguments.- 7.4 Arguments to main ().- 7.5 Pointers to Functions.- 7.6 Dynamic Memory Management.- 7.7 Pass by Reference and Reference Variables.- 7.8 Using Pointers, Arrays and Strings.- 7.9 Summary.- 7.10 Exercises.- 8 Classes.- 8.1 Declaring Classes.- 8.2 Class Access Specifiers.- 8.3 Accessing Members.- 8.4 Assigning Objects.- 8.5 Functions and Classes.- 8.6 Data Hiding.- 8.7 Returning an Object.- 8.8 Reference Arguments.- 8.9 Pointers to Members.- 8.10 Pointer-to-member Operators.- 8.11 Scope and Data Protection.- 8.12 Static Members.- 8.13 Constructor Functions.- 8.14 Constant Class Objects and Member Functions.- 8.15 Friend Functions.- 8.16 Program Structure and Style.- 8.17 Using Classes.- 8.18 Summary.- 8.19 Exercises.- 9 Operator Overloading.- 9.1 Introducing Overloaded Operators.- 9.2 User-defined Conversions.- 9.3 Operator Function Calls.- 9.4 Some Special Binary Operators.- 9.5 Defining Overloaded Operators.- 9.6 Using Overloaded Operators.- 9.7 Summary.- 9.8 Exercises.- 10 Constructors and Destructors.- 10.1 More on Constructor Functions.- 10.2 Destructor Functions.- 10.3 Creating and Destroying Objects.- 10.4 Using Constructors and Destructors.- 10.5 Summary.- 10.6 Exercises.- 11 Single Inheritance.- 11.1 Derived Classes.- 11.2 virtual Functions.- 11.3 Abstract Classes and Pure virtual Functions.- 11.4 Class Hierarchies.- 11.5 Constructors and Destructors.- 11.6 Member Access and Inheritance.- 11.7 Access Declarations.- 11.8 Using Single Inheritance.- 11.9 Summary.- 11.10 Exercises.- 12 Input and Output.- 12.1 Introduction.- 12.2 Generic Input and Output Classes.- 12.3 File Input and Output.- 12.4 Formatting.- 12.5 Stream Condition.- 12.6 In Memory Input and Output.- 12.7 Using the I/O Library.- 12.8 Summary.- 12.9 Exercises.- 13 Bitwise Operations.- 13.1 Bitwise Operators.- 13.2 Bit-fields.- 13.3 Unions.- 13.4 Using Bitwise Operators.- 13.5 Summary.- 13.6 Exercises.- 14 Multiple Inheritance.- 14.1 Derived Classes.- 14.2 Virtual Base Classes.- 14.3 Constructors and Destructors.- 14.4 Member Access Ambiguities.- 14.5 Using Multiple Inheritance.- 14.6 Summary.- 14.7 Exercises.- 15 C++ Applications.- 15.1 Finite Difference Techniques.- 15.2 A Simulation.- 15.3 Projects.- Appendix-A Templates.- Appendix-B The ASCII Character Codes.- Appendix-C Operator Precedence and Associativity.- Appendix-D Differences between C and C++.




