Chapter 7. Operators and Casts
WHAT'S IN THIS CHAPTER?
Operators in C#
The idea of equality when dealing with reference and value types
Data conversion between primitive data types
Converting value types to reference types using boxing
Converting between reference types by casting
Overloading the standard operators for custom types
Adding cast operators to custom types
The preceding chapters have covered most of what you need to start writing useful programs using C#. This chapter completes the discussion of the essential language elements and illustrates some powerful aspects of C# that allow you to extend the capabilities of the C# language.
Although most of C#'s operators should be familiar to C and C++ developers, this section discusses the most important operators for the benefit of new programmers and Visual Basic converts, and sheds light on some of the changes introduced with C#.
C# supports the operators listed in the following table:
+ − * / %
& | ^ ~ && || !
Increment and decrement
== != < > <= >=
Member access (for objects and structs)
Indexing (for arrays and indexers)
Conditional (the ternary operator)
Delegate concatenation and removal (discussed in Chapter 8, "Delegates, Lambdas, and Events")
Overflow exception control
Indirection and address
Namespace alias qualifier ...