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 ...

Get Professional C# 5.0 and .NET 4.5.1 now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.