Book description
The leading author of programming tutorials for beginners introduces you to Visual C++ 2010
Ivor Horton is the preeminent author of introductory programming language tutorials; previous editions of his Beginning Visual C++ have sold nearly 100,000 copies. This book is a comprehensive introduction to both the Standard C++ language and to Visual C++ 2010; no previous programming experience is required.
All aspects of the 2010 release are covered, including changes to the language and the C++ standard.
Microsoft Visual C++ is one of the most popular C++ development environments and compilers, used by hundreds of thousands of developers
Ivor Horton's approach to programming tutorials has achieved a huge following; this book gives beginning programmers a comprehensive introduction to both Standard C++ and Visual C++ 2010
Covers all the language changes in Visual C++ 2010, library additions, new MFC features, changes in the Visual Studio development environment, and more
Also includes a brief introduction to programming for multicore processors in native C++ and C++/CLR processors
Nearly 100,000 copies of this book have been sold in previous editions
Beginners seeking a complete education in Visual C++ will find everything they need in Ivor Horton's Beginning Visual C++ 2010.
Note: CD-ROM/DVD and other supplementary materials are not included as part of eBook file.
Table of contents
- Copyright
- ABOUT THE AUTHOR
- ABOUT THE TECHNICAL EDITOR
- CREDITS
- ACKNOWLEDGMENTS
- INTRODUCTION
-
1. Programming With Visual C++ 2010
- 1.1. THE .NET FRAMEWORK
- 1.2. THE COMMON LANGUAGE RUNTIME
- 1.3. WRITING C++ APPLICATIONS
- 1.4. LEARNING WINDOWS PROGRAMMING
- 1.5. WHAT IS THE INTEGRATED DEVELOPMENT ENVIRONMENT?
- 1.6. USING THE IDE
- 1.7. SUMMARY
-
2. Data, Variables, and Calculations
- 2.1. THE STRUCTURE OF A C++ PROGRAM
- 2.2. DEFINING VARIABLES
- 2.3. FUNDAMENTAL DATA TYPES
- 2.4. BASIC INPUT/OUTPUT OPERATIONS
- 2.5. CALCULATING IN C++
- 2.6. TYPE CONVERSION AND CASTING
- 2.7. THE AUTO KEYWORD
- 2.8. DISCOVERING TYPES
- 2.9. THE BITWISE OPERATORS
- 2.10. INTRODUCING LVALUES AND RVALUES
- 2.11. UNDERSTANDING STORAGE DURATION AND SCOPE
- 2.12. NAMESPACES
- 2.13. C++/CLI PROGRAMMING
- 2.14. DISCOVERING C++/CLI TYPES
- 2.15. SUMMARY
-
3. Decisions and Loops
- 3.1. COMPARING VALUES
- 3.2. REPEATING A BLOCK OF STATEMENTS
- 3.3. C++/CLI PROGRAMMING
- 3.4. SUMMARY
-
4. Arrays, Strings, and Pointers
- 4.1. HANDLING MULTIPLE DATA VALUES OF THE SAME TYPE
- 4.2. INDIRECT DATA ACCESS
- 4.3. DYNAMIC MEMORY ALLOCATION
- 4.4. USING REFERENCES
- 4.5. NATIVE C++ LIBRARY FUNCTIONS FOR STRINGS
- 4.6. C++/CLI PROGRAMMING
- 4.7. SUMMARY
-
5. Introducing Structure into Your Programs
- 5.1. UNDERSTANDING FUNCTIONS
-
5.2. PASSING ARGUMENTS TO A FUNCTION
- 5.2.1. The Pass-by-value Mechanism
- 5.2.2. Pointers as Arguments to a Function
- 5.2.3. Passing Arrays to a Function
- 5.2.4. References as Arguments to a Function
- 5.2.5. Use of the const Modifier
- 5.2.6. Rvalue Reference Parameters
- 5.2.7. Arguments to main()
- 5.2.8. Accepting a Variable Number of Function Arguments
- 5.3. RETURNING VALUES FROM A FUNCTION
- 5.4. RECURSIVE FUNCTION CALLS
- 5.5. C++/CLI PROGRAMMING
- 5.6. SUMMARY
-
6. More about Program Structure
- 6.1. POINTERS TO FUNCTIONS
- 6.2. INITIALIZING FUNCTION PARAMETERS
- 6.3. EXCEPTIONS
- 6.4. HANDLING MEMORY ALLOCATION ERRORS
- 6.5. FUNCTION OVERLOADING
- 6.6. FUNCTION TEMPLATES
- 6.7. USING THE DECLTYPE OPERATOR
- 6.8. AN EXAMPLE USING FUNCTIONS
- 6.9. C++/CLI PROGRAMMING
- 6.10. SUMMARY
-
7. Defining Your Own Data Types
- 7.1. THE STRUCT IN C++
- 7.2. DATA TYPES, OBJECTS, CLASSES, AND INSTANCES
- 7.3. UNDERSTANDING CLASSES
- 7.4. CLASS CONSTRUCTORS
- 7.5. PRIVATE MEMBERS OF A CLASS
- 7.6. THE POINTER this
- 7.7. CONST OBJECTS
- 7.8. ARRAYS OF OBJECTS
- 7.9. STATIC MEMBERS OF A CLASS
- 7.10. POINTERS AND REFERENCES TO CLASS OBJECTS
- 7.11. C++/CLI PROGRAMMING
- 7.12. SUMMARY
-
8. More on Classes
- 8.1. CLASS DESTRUCTORS
- 8.2. IMPLEMENTING A COPY CONSTRUCTOR
- 8.3. SHARING MEMORY BETWEEN VARIABLES
- 8.4. OPERATOR OVERLOADING
- 8.5. THE OBJECT COPYING PROBLEM
- 8.6. CLASS TEMPLATES
- 8.7. USING CLASSES
- 8.8. ORGANIZING YOUR PROGRAM CODE
- 8.9. NATIVE C++ LIBRARY CLASSES FOR STRINGS
- 8.10. C++/CLI PROGRAMMING
- 8.11. SUMMARY
-
9. Class Inheritance and Virtual Functions
- 9.1. OBJECT-ORIENTED PROGRAMMING BASICS
- 9.2. INHERITANCE IN CLASSES
- 9.3. ACCESS CONTROL UNDER INHERITANCE
- 9.4. THE COPY CONSTRUCTOR IN A DERIVED CLASS
- 9.5. CLASS MEMBERS AS FRIENDS
- 9.6. VIRTUAL FUNCTIONS
- 9.7. CASTING BETWEEN CLASS TYPES
- 9.8. NESTED CLASSES
- 9.9. C++/CLI PROGRAMMING
- 9.10. SUMMARY
-
10. The Standard Template Library
- 10.1. WHAT IS THE STANDARD TEMPLATE LIBRARY?
- 10.2. THE RANGE OF STL CONTAINERS
-
10.3. SEQUENCE CONTAINERS
- 10.3.1. Creating Vector Containers
- 10.3.2. The Capacity and Size of a Vector Container
- 10.3.3. Accessing the Elements in a Vector
- 10.3.4. Inserting and Deleting Elements in a Vector
- 10.3.5. Storing Class Objects in a Vector
- 10.3.6. Sorting Vector Elements
- 10.3.7. Storing Pointers in a Vector
- 10.3.8. Double-Ended Queue Containers
- 10.3.9. Using List Containers
- 10.3.10. Using Other Sequence Containers
- 10.4. ASSOCIATIVE CONTAINERS
- 10.5. MORE ON ITERATORS
- 10.6. MORE ON FUNCTION OBJECTS
- 10.7. MORE ON ALGORITHMS
- 10.8. LAMBDA EXPRESSIONS
- 10.9. THE STL FOR C++/CLI PROGRAMS
- 10.10. LAMBDA EXPRESSIONS IN C++/CLI
- 10.11. SUMMARY
- 11. Debugging Techniques
-
12. Windows Programming Concepts
- 12.1. WINDOWS PROGRAMMING BASICS
-
12.2. THE STRUCTURE OF A WINDOWS PROGRAM
- 12.2.1. The WinMain() Function
- 12.2.2. Message Processing Functions
- 12.2.3. A Simple Windows Program
- 12.3. WINDOWS PROGRAM ORGANIZATION
- 12.4. THE MICROSOFT FOUNDATION CLASSES
- 12.5. USING WINDOWS FORMS
- 12.6. SUMMARY
- 13. Programming for Multiple Cores
- 14. Windows Programming with the Microsoft Foundation Classes
-
15. Working with Menus and Toolbars
- 15.1. COMMUNICATING WITH WINDOWS
- 15.2. EXTENDING THE SKETCHER PROGRAM
- 15.3. ELEMENTS OF A MENU
- 15.4. ADDING HANDLERS FOR MENU MESSAGES
- 15.5. ADDING TOOLBAR BUTTONS
- 15.6. MENUS AND TOOLBARS IN A C++/CLI PROGRAM
- 15.7. SUMMARY
-
16. Drawing in a Window
- 16.1. BASICS OF DRAWING IN A WINDOW
- 16.2. THE DRAWING MECHANISM IN VISUAL C++
- 16.3. DRAWING GRAPHICS IN PRACTICE
-
16.4. PROGRAMMING FOR THE MOUSE
- 16.4.1. Messages from the Mouse
- 16.4.2. Mouse Message Handlers
-
16.4.3. Drawing Using the Mouse
- 16.4.3.1. Getting the Client Area Redrawn
- 16.4.3.2. Defining Classes for Elements
- 16.4.3.3. The CElement Class
- 16.4.3.4. The CLine Class
- 16.4.3.5. Calculating the Enclosing Rectangle for a Line
- 16.4.3.6. The CRectangle Class
- 16.4.3.7. The CRectangle Class Constructor
- 16.4.3.8. The CCircle Class
- 16.4.3.9. The CCurve Class
- 16.4.3.10. Completing the Mouse Message Handlers
- 16.5. EXERCISING SKETCHER
- 16.6. DRAWING WITH THE CLR
- 16.7. SUMMARY
-
17. Creating the Document and Improving the View
- 17.1. CREATING THE SKETCH DOCUMENT
- 17.2. IMPROVING THE VIEW
- 17.3. DELETING AND MOVING SHAPES
- 17.4. IMPLEMENTING A CONTEXT MENU
- 17.5. DEALING WITH MASKED ELEMENTS
- 17.6. EXTENDING CLR SKETCHER
- 17.7. SUMMARY
-
18. Working with Dialogs and Controls
- 18.1. UNDERSTANDING DIALOGS
- 18.2. UNDERSTANDING CONTROLS
- 18.3. CREATING A DIALOG RESOURCE
- 18.4. PROGRAMMING FOR A DIALOG
- 18.5. SUPPORTING THE DIALOG CONTROLS
- 18.6. COMPLETING DIALOG OPERATIONS
- 18.7. USING A SPIN BUTTON CONTROL
- 18.8. USING THE SCALE FACTOR
- 18.9. USING THE CTASKDIALOG CLASS
- 18.10. WORKING WITH STATUS BARS
- 18.11. USING A LIST BOX
- 18.12. USING AN EDIT BOX CONTROL
- 18.13. DIALOGS AND CONTROLS IN CLR SKETCHER
- 18.14. SUMMARY
-
19. Storing and Printing Documents
- 19.1. UNDERSTANDING SERIALIZATION
- 19.2. SERIALIZING A DOCUMENT
- 19.3. APPLYING SERIALIZATION
- 19.4. EXERCISING SERIALIZATION
- 19.5. PRINTING A DOCUMENT
- 19.6. IMPLEMENTING MULTIPAGE PRINTING
-
19.7. SERIALIZATION AND PRINTING IN CLR SKETCHER
- 19.7.1. Understanding Binary Serialization
-
19.7.2. Serializing a Sketch
- 19.7.2.1. Making the Sketch Class Serializable
- 19.7.2.2. Dealing with Pen and Brush Objects
- 19.7.2.3. Making the Curve Class Serializable
-
19.7.2.4. Implementing File Operations for a Sketch
- 19.7.2.4.1. Creating Dialogs for File Operations
- 19.7.2.4.2. Recording the Saved State of a Sketch
- 19.7.2.4.3. Saving a Sketch
- 19.7.2.4.4. Retrieving a Sketch from a File
- 19.7.2.4.5. Implementing the File New Operation
- 19.7.2.4.6. Dealing with Closing the Form
- 19.7.2.4.7. Supporting the Toolbar Buttons
- 19.7.3. Printing a Sketch
- 19.8. SUMMARY
- 20. Writing Your Own DLLs
Product information
- Title: Ivor Horton's Beginning Visual C++® 2010
- Author(s):
- Release date: April 2010
- Publisher(s): Wrox
- ISBN: 9780470500880
You might also like
book
Ivor Horton's Beginning Visual C++® 2005
Popular author Ivor Horton uses his trademark approachable writing style to provide novice programmers with the …
book
Microsoft® Visual Studio® 2010 Unleashed
This end-to-end deep dive into Microsoft Visual Studio 2010 Professional will help working developers squeeze maximum …
book
Ivor Horton's Beginning Visual C++ 2012
The only book to teach C++ programming with Microsoft Visual Studio! There's a reason why Ivor …
book
Professional Enterprise .NET
Comprehensive coverage to help experienced .NET developers create flexible, extensible enterprise application code If you're an …