Professional
1l6xhbR
1l6xhbR
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Unboxing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194<br />
Casting data safely . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196<br />
The is operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196<br />
The as operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .197<br />
Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199<br />
Quick reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199<br />
Chapter 9<br />
Creating value types with enumerations<br />
and structures 201<br />
Working with enumerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .201<br />
Declaring an enumeration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202<br />
Using an enumeration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202<br />
Choosing enumeration literal values . . . . . . . . . . . . . . . . . . . . . . . . .203<br />
Choosing an enumeration’s underlying type . . . . . . . . . . . . . . . . . .204<br />
Working with structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .206<br />
Declaring a structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .208<br />
Understanding differences between structures and classes . . . . .209<br />
Declaring structure variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .210<br />
Understanding structure initialization . . . . . . . . . . . . . . . . . . . . . . . .211<br />
Copying structure variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .215<br />
Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .219<br />
Quick reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .219<br />
Chapter 10 Using arrays 221<br />
Declaring and creating an array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .221<br />
Declaring array variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .221<br />
Creating an array instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .222<br />
Populating and using an array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .223<br />
Creating an implicitly typed array . . . . . . . . . . . . . . . . . . . . . . . . . . . .224<br />
Accessing an individual array element . . . . . . . . . . . . . . . . . . . . . . . .225<br />
Iterating through an array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .225<br />
Passing arrays as parameters and return values for a method . . .227<br />
Copying arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .228<br />
Contents ix