| How to Use This Book |
|
xii | |
|
Getting Started with Visual C++ .Net |
|
|
|
Introduction to Visual C++ .NET |
|
|
2 | (2) |
|
Create a Visual C++ .NET Solution |
|
|
4 | (1) |
|
Open a Visual C++ .NET Solution |
|
|
5 | (1) |
|
Enter Visual C++ .NET Source Code |
|
|
6 | (2) |
|
Save a Visual C++ .NET File |
|
|
8 | (1) |
|
Compile a Visual C++ .NET File |
|
|
9 | (1) |
|
Build a Visual C++ .NET Solution |
|
|
10 | (1) |
|
Add a File to a Visual C++ .NET Project |
|
|
11 | (1) |
|
|
|
|
Introduction to Data Types |
|
|
12 | (2) |
|
|
|
14 | (2) |
|
|
|
16 | (2) |
|
|
|
18 | (2) |
|
|
|
20 | (2) |
|
Branch Based on a Comparison |
|
|
22 | (2) |
|
Make More Complicated Comparisons |
|
|
24 | (2) |
|
|
|
26 | (4) |
|
Create a Function Prototype |
|
|
30 | (2) |
|
|
|
|
|
|
32 | (2) |
|
|
|
34 | (2) |
|
|
|
36 | (2) |
|
|
|
38 | (2) |
|
Create a switch Statement |
|
|
40 | (2) |
|
Programming With Structures |
|
|
|
|
|
42 | (2) |
|
|
|
44 | (2) |
|
|
|
46 | (2) |
|
|
|
48 | (2) |
|
Create an Array of Structures |
|
|
50 | (2) |
|
Pass a Structure Pointer to a Function |
|
|
52 | (2) |
|
Create a Structure Containing Functions |
|
|
54 | (2) |
|
|
|
|
Convert Data with C-Style Casts |
|
|
56 | (2) |
|
Convert Between Pointers and Numbers |
|
|
58 | (2) |
|
Convert Between Class Pointers |
|
|
60 | (4) |
|
Convert Between Class References |
|
|
64 | (4) |
|
Convert Between Classes Statically |
|
|
68 | (2) |
|
Remove the Const Attribute with a Cast |
|
|
70 | (4) |
|
Safely Cast a Base Class to a Derived Class |
|
|
74 | (2) |
|
Cast Without Run-Time Checking |
|
|
76 | (2) |
|
Replace Most C-Style Casts |
|
|
78 | (2) |
|
|
|
|
|
|
80 | (2) |
|
Access Data through a Pointer |
|
|
82 | (2) |
|
|
|
84 | (1) |
|
|
|
85 | (1) |
|
|
|
86 | (2) |
|
Return a Pointer from a Function |
|
|
88 | (2) |
|
Declare a Pointer to an Array |
|
|
90 | (2) |
|
Declare a Structure Pointer |
|
|
92 | (2) |
|
|
|
94 | (2) |
|
|
|
|
|
|
96 | (2) |
|
|
|
98 | (2) |
|
|
|
100 | (2) |
|
|
|
102 | (2) |
|
|
|
104 | (2) |
|
|
|
106 | (2) |
|
|
|
108 | (2) |
|
|
|
110 | (2) |
|
|
|
112 | (2) |
|
Add Friend Variables and Methods |
|
|
114 | (2) |
|
|
|
116 | (2) |
|
Programming With Inheritance |
|
|
|
|
|
118 | (2) |
|
|
|
120 | (2) |
|
Initialize the Base Class |
|
|
122 | (2) |
|
|
|
124 | (2) |
|
Create Classes Using Polymorphism |
|
|
126 | (2) |
|
|
|
128 | (2) |
|
Derive a Class from an Abstract Class |
|
|
130 | (2) |
|
|
|
|
Create a Debugging Executable |
|
|
132 | (2) |
|
|
|
134 | (2) |
|
|
|
136 | (2) |
|
|
|
138 | (2) |
|
|
|
140 | (2) |
|
Run to the Cursor Location |
|
|
142 | (2) |
|
Programming With .Net Strings |
|
|
|
|
|
144 | (2) |
|
|
|
146 | (2) |
|
|
|
148 | (2) |
|
Change the Case of a String |
|
|
150 | (2) |
|
|
|
152 | (2) |
|
|
|
154 | (2) |
|
|
|
156 | (2) |
|
Convert Numbers to Strings |
|
|
158 | (2) |
|
Convert Strings to Numbers |
|
|
160 | (2) |
|
Programming With .Net Arrays |
|
|
|
Introduction to .NET Arrays |
|
|
162 | (2) |
|
|
|
164 | (2) |
|
Create an Array of Pointers |
|
|
166 | (2) |
|
|
|
168 | (2) |
|
|
|
170 | (2) |
|
|
|
172 | (2) |
|
Handling Errors with .Net Exceptions |
|
|
|
|
|
174 | (2) |
|
Catch an Exception with a try/catch Block |
|
|
176 | (2) |
|
|
|
178 | (2) |
|
Using the .NET Exceptions |
|
|
180 | (2) |
|
Write a .NET Exception Handler |
|
|
182 | (2) |
|
Create an Exception Class |
|
|
184 | (2) |
|
|
|
|
|
|
186 | (2) |
|
|
|
188 | (2) |
|
|
|
190 | (2) |
|
|
|
192 | (2) |
|
|
|
194 | (2) |
|
|
|
196 | (2) |
|
|
|
198 | (2) |
|
|
|
200 | (2) |
|
Seek to Any Position in a File |
|
|
202 | (2) |
|
|
|
204 | (2) |
|
|
|
|
|
|
206 | (2) |
|
|
|
208 | (2) |
|
|
|
210 | (2) |
|
|
|
212 | (2) |
|
|
|
214 | (2) |
|
Add a GroupBox with RadioButton Controls |
|
|
216 | (2) |
|
|
|
218 | (2) |
|
|
|
220 | (2) |
|
Add a CheckedListBox Control |
|
|
222 | (2) |
|
|
|
224 | (2) |
|
Add a ProgressBar Control |
|
|
226 | (2) |
|
|
|
228 | (2) |
|
|
|
230 | (2) |
|
|
|
232 | (4) |
|
|
|
236 | (2) |
|
Add a RichTextBox Control |
|
|
238 | (4) |
|
Programming with .Net Dialog Boxes |
|
|
|
Display a ColorDialog Dialog Box |
|
|
242 | (2) |
|
Display an OpenFileDialog Dialog Box |
|
|
244 | (2) |
|
Display a SaveFileDialog Dialog Box |
|
|
246 | (2) |
|
Display a FontDialog Dialog Box |
|
|
248 | (2) |
|
Display a PrintDialog Dialog Box |
|
|
250 | (2) |
|
Display a Custom Modal Dialog Box |
|
|
252 | (2) |
|
Adding .Net Event Handling |
|
|
|
|
|
254 | (2) |
|
|
|
256 | (2) |
|
|
|
258 | (2) |
|
|
|
260 | (2) |
|
Respond to Keyboard Events |
|
|
262 | (2) |
|
Using C++ Managed Extensions |
|
|
|
Introduction to Managed Extensions |
|
|
264 | (2) |
|
|
|
266 | (2) |
|
Add Managed Extensions to an Existing Project |
|
|
268 | (2) |
|
|
|
270 | (2) |
|
|
|
272 | (2) |
|
Ensure that a Variable Does Not Move |
|
|
274 | (2) |
|
Reference a Function with a Delegate |
|
|
276 | (2) |
|
Create Properties for Managed Classes |
|
|
278 | (2) |
|
Prevent Class Inheritance |
|
|
280 | (2) |
|
|
|
282 | (2) |
|
|
|
284 | (2) |
|
Use a Keyword as an Identifier |
|
|
286 | (2) |
|
Declare an Abstract Class |
|
|
288 | (2) |
|
Handle Unsuccessful Casts |
|
|
290 | (2) |
|
|
|
|
.Net Programming Environment |
|
|
292 | (1) |
|
|
|
293 | (4) |
|
|
|
297 | (1) |
| APPENDIX |
|
|
|
|
298 | (2) |
|
Using the E Version of the Book |
|
|
300 | (2) |
|
Hungry Minds, Inc. End-User License Agreement |
|
|
302 | (2) |
|
|
|
304 | (4) |
| Index |
|
308 | |