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

WROX.COM CODE DOWNLOADS FOR THIS CHAPTER

The wrox.com code downloads for this chapter are found at http://www.wrox.com/remtitle.cgi?isbn=1118314425 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 = += -= *= /= %= &= |= ...

Get Professional C# 2012 and .NET 4.5 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.