&
bitwise AND, 73–76
logical AND, 67, 68, 70, 71, 225–231
pointer operator, 535
&& (short-circuit or conditional AND), 67, 70–71, 225, 227–231
*
multiplication operator, 24, 63
pointer operator, 534−535, 543
@ to designate verbatim string literals, 49–50
@-qualified keywords, 33–34
|
bitwise OR, 73, 76–77
logical OR, 67, 68, 69–70, 71, 225–231
|| (short-circuit or conditional OR), 67, 70, 71, 225, 227–231
[ ], 135, 136, 140, 143, 241, 471, 472, 546
^
bitwise exclusive OR, 73, 77–78
logical exclusive OR, 67, 68
: (colon), 265, 272, 333
:: namespace alias qualifier, 435–439
{ }, 19, 20, 21, 29, 31, 52, 118, 138, 142
=, 23, 72−73
= = (relational operator), 27, 67, 220, 222, 299
and strings, 155, 621
!, 67, 68, 69, 225–227
!=, 27, 67, 222
and strings, 155, 621
/, 24, 63
/* */, 19
/** */, 867
//, 20
///, 867
<
I/O redirection operator, 379
relational operator, 27, 67, 220–222
< >, 485
<<, 73, 79–82
<=, 27, 67, 222
−, 24, 63
−>, 537
− −, 29, 63, 64–65, 213, 216
%
modulus operator, 63–64
used with custom date and time placeholder characters, 655
( ), 20, 84, 116, 122
. (dot operator), 111, 119, 200, 277, 331
+
addition operator, 24, 63
concatenating strings with, 156, 626
used with WriteLine( ), 24
++, 29, 63, 64–67, 213–216
#
used with preprocessor directive, 439
used with WriteLine( ), 45–46, 65–66
?
ternary operator, 82–83
used with nullable type declaration, 547
?? null coalescing operator, 549–550
>
I/O redirection operator, 379
relational operator, 27, 67, 220–222
>>, 73, 79–82
>=, 27, 67, 222
; (semicolon), 21, 31, 93, 142, 403
~
bitwise NOT, 73, 78–79
used in destructor declaration, 131
Abort( ), 697−701
Abs( ), 189, 564
abstract type modifier, 287, 295, 298
Access control, 161–168
guidelines for using public and private, 163–164
Access modifiers/specifiers, 20, 110, 161–162, 256–257, 446
Accessors
event, 414–418
indexer, 242, 245
property, 241, 250–251
using access modifiers with, 256–257
Acos( ), 564
Action delegate, 596–597
add event accessor, 414−415, 418
Add( ), 578, 710, 711, 712, 722, 735, 736, 746, 748, 751, 821, 830, 842
AddAfter( ), 743
AddBefore( ), 743
AddFirst( ), 743
AddLast( ), 743
AddMemoryPressure( ), 614
AddRange( ), 715, 739
AllKeys property, 792
AllowMultiple named parameter, 479
AND operator
bitwise (&), 73–76
logical (&), 67, 68, 70, 71, 225–231
short-circuit or conditional (&&), 67, 70–71, 225, 227–231
And( ), 732
Application class, 829
Application.EnableVisualStyles( ), 842
Application.Exit( ), 836
ApplicationException, 335–336, 352, 355
ArgumentException, 371, 376, 378, 381, 758, 761, 821
ArgumentNullException, 371, 376, 378, 381, 393, 711, 736, 787
ArgumentOutOfRangeException, 371, 717
Arguments, 21, 116, 122
command-line, 195–197
passing, 170–172
type. See Type argument(s)
variable number of, using, 178–181
Arithmetic operators, 24, 63–67
Array class, 590–610
methods, table of, 598–610
properties, table of, 597
Array.ForEach( ), 596
Array(s), 135–149
boundaries, 139, 337
boundary errors, using indexer to prevent runtime exceptions caused by, 242–245, 248–250
boundary errors, using a property to prevent runtime exceptions caused by, 252–255
copying an, 593–594
custom, using indexers and properties to create, 257–262
dynamic, 714
and fixed-size buffers, 545–546
implemented in C# as objects, 135–136, 146
indexing (accessing elements of), 136–137, 140, 143–144
initializing, 138–139, 142
I/O using, 389–390
jagged, 143–145, 148–149
Length property of, 146–149
multidimensional, 139–145
null-terminated, 542
one-dimensional, 135–139
parameter params, 178–181, 190
of pointers, 544
pointers and, 540–542
rectangular, 143
reference variables, assigning, 145–146
returned from methods, 183–185
reversing an, 592–593
sorting, 590–592
searching, 152–153, 590–592
of strings, 157–158
ArrayList class, 707, 714–721, 734
methods, table of, 715–717
ArrayTypeMismatchException, 350
Arrow operator (−>), 537
as operator, 448–450
ASCII character set, 42, 361
ASCIIEncoding, 620
Asin( ), 564
ASP.NET, 445, 777
AsReadOnly<T>( ), 598
Assembly, 162, 445–446
alias, 555–557
and DLL files, 468
friend, 552
and reflection, 463–468
Assembly class, 469
Assignment operator(s)
=, 23, 72–73
arithmetic and logical compound (op=), 72–73
bitwise compound, 82
and operator overloading, 235–236
Assignments
reference variables and, 115–116, 145–146, 327, 328–329
structure, 327–328
type conversion in, 54–58
Atan( ), 564
Atan2( ), 564
Attribute class, 471, 472, 473
Attributes, 447, 471–481
attaching, 472–473
built-in, 478–481
creating, 472
and named parameters, 475–478
retrieving, 475
AttributeTargets enumeration, 479
AttributeUsage attribute, 471, 472, 478–479
AuthenticationLevel property, 782
AutoResetEvent, 693, 695