Log in Sign up
Trang chủeBookDiscovering Modern C++, 2nd edition
Discovering Modern C++, 2nd edition

Discovering Modern C++, 2nd edition

BRAND: PEARSON
Publisher:
PEARSON
Author:
Peter Gottschling
Edition:
(November 19, 2021) © 2022
eBook ISBN:
9780137833016
Print ISBN:
9780136677642
Type:
1 Year Subscription. Dành cho Cá nhân
eBook edition. 1 year Subscription. Dành cho Cá nhân | Trường ĐH, Nhóm, Thư Viện: Gọi 0915920514 để báo giá Pearson, Vital Source eBook hoặc mua Sách In

Tổng quan sách

Khám phá C++ hiện đại, Phiên bản thứ hai của Peter Gottschling là phần giới thiệu chuyên sâu hướng dẫn bạn một cách suôn sẻ các cách tiếp cận phức tạp dựa trên các tính năng nâng cao. Được cập nhật kỹ lưỡng cho C++17 và C++20, Phiên bản thứ hai này giới thiệu các khái niệm chính bằng cách sử dụng các ví dụ từ nhiều lĩnh vực vấn đề kỹ thuật, dựa trên kinh nghiệm sâu rộng của ông trong việc đào tạo các chuyên gia và giảng dạy C++ cho sinh viên vật lý, toán và kỹ thuật.Cuốn sách này được thiết kế để giúp học viên bắt đầu nhanh chóng và sau đó thành thạo các tính năng ngày càng mạnh mẽ, từ lambdas đến các mẫu biểu thức. Bạn cũng sẽ tìm hiểu cách tận dụng các thư viện mạnh mẽ có sẵn cho lập trình viên C++: cả Thư viện mẫu chuẩn (STL) và thư viện khoa học cho số học, đại số tuyến tính, phương trình vi phân và đồ thị. Trong Phiên bản thứ hai này, Gottschling cũng trình bày nội dung chuyên sâu và kỹ lưỡng về các mẫu đa luồng và đa dạng.Xuyên suốt, Gottschling trình bày cách viết phần mềm rõ ràng và biểu cảm bằng cách sử dụng định hướng đối tượng, khái quát, siêu lập trình và kỹ thuật thủ tục. Khi hoàn thành, bạn sẽ nắm vững tất cả các khái niệm trừu tượng cần thiết để viết chương trình C++ với chất lượng và hiệu suất vượt trội.
  1. Preface xixAcknowledgments xxvAbout the Author xxvii
  2. Chapter 1: C++ Basics 11.1 Our First Program 11.2 Variables 41.3 Operators 121.4 Expressions and Statements 221.5 Functions 301.6 Error Handling 351.7 I/O 411.8 Arrays, Pointers, and References 521.9 Structuring Software Projects 641.10 Exercises 69
  3. Chapter 2: Classes 712.1 Program for Universal Meaning, Not Technical Details 712.2 Members 732.3 Setting Values: Constructors and Assignments 782.4 Destructors 1052.5 Method Generation Summary 1112.6 Accessing Member Variables 1122.7 Operator Overloading Design 1172.8 Exercises 126
  4. Chapter 3: Generic Programming 1293.1 Function Templates 1293.2 Namespaces and Function Lookup 1383.3 Class Templates 1473.4 Type Deduction and Definition 1543.5 Template Specialization 1623.6 Non-Type Parameters for Templates 1743.7 Functors 1773.8 Lambda 1853.9 Variable Templates 1903.10 Programming with Concept(s) 1923.11 Variadic Templates 2003.12 Exercises 208
  5. Chapter 4: Libraries 2114.1 Standard Template Library 2114.2 Numerics 2394.3 Meta-programming 2524.4 Utilities 2564.5 The Time Is Now 2674.6 Concurrency 2704.7 Scientific Libraries Beyond the Standard 2824.8 Exercises 285
  6. Chapter 5: Meta-Programming 2895.1 Let the Compiler Compute 2895.2 Providing and Using Type Information 2975.3 Expression Templates 3185.4 Meta-Tuning: Write Your Own Compiler Optimization 3285.5 Optimizing with Semantic Concepts 3545.6 Turing Completeness 3595.7 Exercises 362
  7. Chapter 6: Object-Oriented Programming 3656.1 Basic Principles 3656.2 Removing Redundancy 3796.3 Multiple Inheritance 3806.4 Dynamic Selection by Sub-typing 3876.5 Conversion 3896.6 Advanced Techniques 3976.7 Exercises 405
  8. Chapter 7: Scientific Projects 4077.1 Implementation of ODE Solvers 4077.2 Creating Projects 4187.3 Modules 4307.4 Some Final Words 434Appendix A: Clumsy Stuff 435A.1 More Good and Bad Scientific Software 435A.2 Basics in Detail 441A.3 Real-World Example: Matrix Inversion 449A.4 Class Details 458A.5 Method Generation 462A.6 Template Details 474A.7 More on Libraries 479A.8 Dynamic Selection in Old Style 480A.9 More about Meta-Programming 481A.10 Linking to C Code 489Appendix B: Programming Tools 491B.1 g++ 491B.2 Debugging 492B.3 Memory Analysis 496B.4 gnuplot 498B.5 Unix, Linux, and Mac OS 498Appendix C: Language Definitions 501C.1 Value Categories 501C.2 Operator Overview 502C.3 Conversion Rules 504Bibliography 507Subject Index 513
Chat Zalo