Chapter 7Operators 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
WROX.COM CODE DOWNLOADS FOR THIS CHAPTER
The wrox.com code downloads for this chapter are found at www.wrox.com/go/procsharp on the Download Code tab. The code for this chapter is divided into the following major examples:
- SimpleCurrency
- SimpleCurrency2
- VectorStruct
- VectorStructMoreOverloads
OPERATORS AND CASTS
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 enable you to extend its capabilities.
OPERATORS
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:
| CATEGORY | OPERATOR |
|---|---|
| Arithmetic | + – * / % |
| Logical | & | ^ ~ && || ! |
| String concatenation | + |
| Increment and decrement | ++ –– |
| Bit shifting | << >> |
| Comparison | == != < > <= >= |
| Assignment | = += -= *= /= %= &= |= ^= <<= >>= |
| Member ... |
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access