The + operator can function as either a unary or a binary operator.
Unary + operators are predefined for all numeric types. The result of a unary + operation on a numeric type is simply the value of the operand.
Binary + operators are predefined for numeric and string types. For numeric types, + computes the sum of its two operands. When one or both operands are of type string, + concatenates the string representations of the operands.
Delegate types also provide a binary + operator, which performs delegate concatenation.
User-defined types can overload the unary + and binary + operators (see operator).
using System; class Test { public static void Main() { Console.WriteLine(+5); // unary plus Console.WriteLine(5 + 5); // addition Console.WriteLine(5 + .5); // addition Console.WriteLine("5" + "5"); // string concatenation Console.WriteLine(5.0 + "5"); // string concatenation // note automatic conversion from double to string } }
5 10 5.5 55 55
C# Operators | CLR 7.6.1 Unary plus operator | CLR 7.7.4 Addition operator