وبلاگ بلیان

Programming: Principles and Practice Using C++, 3rd Edition

معرفی کتاب «Programming: Principles and Practice Using C++, 3rd Edition» نوشتهٔ Bjarne Stroustrup، منتشرشده توسط نشر Pearson Education در سال 2024. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است. «Programming: Principles and Practice Using C++, 3rd Edition» در دستهٔ بدون دسته‌بندی قرار دارد.

Bjarne Stroustrup, "Programming: Principles and Practice Using C++, 3rd Edition"An Introduction to Programming by the Inventor of C++Programming: Principles and Practice Using C++, Third Edition, will help anyone who is willing to work hard learn the fundamental principles of programming and develop the practical skills needed for programming in the real world. Previous editions have been used successfully by many thousands of students. This revised and updated editionAssumes that your aim is to eventually write programs that are good enough for others to use and maintainFocuses on fundamental concepts and techniques, rather than on obscure language-technical detailsIs an introduction to programming in general, including procedural, object-oriented, and generic programming, rather than just an introduction to a programming languageCovers both contemporary high-level techniques and the lower-level techniques needed for efficient use of hardwareWill give you a solid foundation for writing useful, correct, type-safe, maintainable, and efficient codeIs primarily designed for people who have never programmed before, but even seasoned programmers have found previous editions useful as an introduction to more effective concepts and techniquesCovers a wide range of essential concepts, design and programming techniques, language features, and librariesUses contemporary C++ (C++20 and C++23)Covers the design and use of both built-in types and user-defi ned types, complete with input, output, computation, and simple graphics/GUIOffers an introduction to the C++ standard library containers and algorithms Cover Title Page Copyright Page Contents Preface 0 Notes to the Reader 0.1 The structure of this book 0.2 A philosophy of teaching and learning 0.3 ISO standard C++ 0.4 PPP support 0.5 Author biography 0.6 Bibliography Part I: The Basics 1 Hello, World! 1.1 Programs 1.2 The classic first program 1.3 Compilation 1.4 Linking 1.5 Programming environments 2 Objects, Types, and Values 2.1 Input 2.2 Variables 2.3 Input and type 2.4 Operations and operators 2.5 Assignment and initialization 2.6 Names 2.7 Types and objects 2.8 Type safety 2.9 Conversions 2.10 Type deduction: auto 3 Computation 3.1 Computation 3.2 Objectives and tools 3.3 Expressions 3.4 Statements 3.5 Functions 3.6 vector 3.7 Language features 4 Errors! 4.1 Introduction 4.2 Sources of errors 4.3 Compile-time errors 4.4 Link-time errors 4.5 Run-time errors 4.6 Exceptions 4.7 Avoiding and finding errors 5 Writing a Program 5.1 A problem 5.2 Thinking about the problem 5.3 Back to the calculator! 5.4 Back to the drawing board 5.5 Turning a grammar into code 5.6 Trying the first version 5.7 Trying the second version 5.8 Token streams 5.9 Program structure 6 Completing a Program 6.1 Introduction 6.2 Input and output 6.3 Error handling 6.4 Negative numbers 6.5 Remainder: % 6.6 Cleaning up the code 6.7 Recovering from errors 6.8 Variables 7 Technicalities: Functions, etc. 7.1 Technicalities 7.2 Declarations and definitions 7.3 Scope 7.4 Function call and return 7.5 Order of evaluation 7.6 Namespaces 7.7 Modules and headers 8 Technicalities: Classes, etc. 8.1 User-defined types 8.2 Classes and members 8.3 Interface and implementation 8.4 Evolving a class: Date 8.5 Enumerations 8.6 Operator overloading 8.7 Class interfaces Part II: Input and Output 9 Input and Output Streams 9.1 Input and output 9.2 The I/O stream model 9.3 Files 9.4 I/O error handling 9.5 Reading a single value 9.6 User-defined output operators 9.7 User-defined input operators 9.8 A standard input loop 9.9 Reading a structured file 9.10 Formatting 9.11 String streams 10 A Display Model 10.1 Why graphics? 10.2 A display model 10.3 A first example 10.4 Using a GUI library 10.5 Coordinates 10.6 Shapes 10.7 Using Shape primitives 10.8 Getting the first example to run 11 Graphics Classes 11.1 Overview of graphics classes 11.2 Point and Line 11.3 Lines 11.4 Color 11.5 Line_style 11.6 Polylines 11.7 Closed shapes 11.8 Text 11.9 Mark 11.10 Image 12 Class Design 12.1 Design principles 12.2 Shape 12.3 Base and derived classes 12.4 Other Shape functions 12.5 Benefits of object-oriented programming 13 Graphing Functions and Data 13.1 Introduction 13.2 Graphing simple functions 13.3 Function 13.4 Axis 13.5 Approximation 13.6 Graphing data 14 Graphical User Interfaces 14.1 User-interface alternatives 14.2 The‘‘Next’’button 14.3 A simple window 14.4 Button and other Widgets 14.5 An example: drawing lines 14.6 Simple animation 14.7 Debugging GUI code Part III: Data and Algorithms 15 Vector and Free Store 15.1 Introduction 15.2 vector basics 15.3 Memory, addresses, and pointers 15.4 Free store and pointers 15.5 Destructors 15.6 Access to elements 15.7 An example: lists 15.8 The this pointer 16 Arrays, Pointers, and References 16.1 Arrays 16.2 Pointers and references 16.3 C-style strings 16.4 Alternatives to pointer use 16.5 An example: palindromes 17 Essential Operations 17.1 Introduction 17.2 Access to elements 17.3 List initialization 17.4 Copying and moving 17.5 Essential operations 17.6 Other useful operations 17.7 Remaining Vector problems 17.8 Changing size 17.9 Our Vector so far 18 Templates and Exceptions 18.1 Templates 18.2 Generalizing Vector 18.3 Range checking and exceptions 18.4 Resources and exceptions 18.5 Resource-management pointers 19 Containers and Iterators 19.1 Storing and processing data 19.2 Sequences and iterators 19.3 Linked lists 19.4 Generalizing Vector yet again 19.5 An example: a simple text editor 19.6 vector, list, and string 20 Maps and Sets 20.1 Associative containers 20.2 map 20.3 unordered_map 20.4 Timing 20.5 set 20.6 Container overview 20.7 Ranges and iterators 21 Algorithms 21.1 Standard-library algorithms 21.2 Function objects 21.3 Numerical algorithms 21.4 Copying 21.5 Sorting and searching Index A B C D E F G H I J K L M N O P Q R S T U V X Y Z "In A Tour of C++, Third Edition, Bjarne Stroustrup provides an overview of ISO C++, C++20, that aims to give experienced programmers a clear understanding of what constitutes modern C++. Featuring carefully crafted examples and practical help in getting started, this revised and updated edition concisely covers most major language features and the major standard-library components needed for effective use. Stroustrup presents C++ features in the context of the programming styles they support, such as object-oriented and generic programming. His tour is remarkably comprehensive. Coverage begins with the basics, then ranges widely through more advanced topics, emphasizing newer language features. This edition covers many features that are new in C++20 as implemented by major C++ suppliers, including modules, concepts, coroutines, and ranges. It even introduces some library components in current use that are not scheduled for inclusion in the standard until C++23. This authoritative guide does not aim to teach you how to program (for that, see Stroustrup's Programming: Principles and Practice Using C++, Second Edition), nor will it be the only resource you'll need for C++ mastery (for that, see Stroustrup's The C++ Programming Language, Fourth Edition, and recommended online sources). If, however, you are a C or C++ programmer wanting greater familiarity with the current C++ language, or a programmer versed in another language wishing to gain an accurate picture of the nature and benefits of modern C++, you won't find a shorter or simpler introduction."-- Provided by publisher An Introduction to Programming by the Inventor of C++ Programming: Principles and Practice Using C++, Third Edition, will help anyone who is willing to work hard learn the fundamental principles of programming and develop the practical skills needed for programming in the real world. Previous editions have been used successfully by many thousands of students. This revised and updated edition • Assumes that your aim is to eventually write programs that are good enough for others to use and maintain • Focuses on fundamental concepts and techniques, rather than on obscure language-technical details • Is an introduction to programming in general, including procedural, object-oriented, and generic programming, rather than just an introduction to a programming language • Covers both contemporary high-level techniques and the lower-level techniques needed for efficient use of hardware • Will give you a solid foundation for writing useful, correct, type-safe, maintainable, and efficient code • Is primarily designed for people who have never programmed before, but even seasoned programmers have found previous editions useful as an introduction to more effective concepts and techniques • Covers a wide range of essential concepts, design and programming techniques, language features, and libraries • Uses contemporary C++ (C++20 and C++23) • Covers the design and use of both built-in types and user-defi ned types, complete with input, output, computation, and simple graphics/GUI • Offers an introduction to the C++ standard library containers and algorithms "The book is an introduction to programming in general, including object-oriented programming and generic programming. It is also a solid introduction to the C++ programming language, one of the most widely used languages for real-world software. The book presents modern C++ programming techniques from the start, introducing the C++ standard library to simplify programming tasks." "The book is primarily designed for people who have never programmed before, and it has been tested with more than 1,000 first-year university students. However, practitioners and advanced students will gain new insight and guidance by seeing how a recognized master approaches the elements of his art."--Jacket.
دانلود کتاب Programming: Principles and Practice Using C++, 3rd Edition