Difference of Unary operators ( += , =+ , ++x , x++ )

前端 未结 3 783
青春惊慌失措
青春惊慌失措 2021-01-14 04:56

What is the difference between these unary operators in C# ? . Can you provide me with example?

Please provide the name of each. :)

+= vs =+

++x vs

3条回答
  •  挽巷
    挽巷 (楼主)
    2021-01-14 05:27

    ++x vs x++ are unary operators. ++x means pre increment and x++ means post increment.

    int temp;
    temp = 1;
    Console.WriteLine(++temp); // Outputs 2
    temp = 1;
    Console.WriteLine(temp++); // outputs 1
    Console.WriteLine(temp); // outputs 2
    

    Prefix increment means:

    The result of the operation is the value of the operand after it has been incremented.

    Postfix increment means:

    The result of the operation is the value of the operand before it has been incremented.

    Now the following: += means temp += 10; // same as temp = temp + 10;

    This =+ isn't a valid operator. If one does this:

    str = + str;  // will throw an error.
    int a;
    a = +2; // sort of meaningless . 2 and +2 means same.
    

    More here: Is there such thing as a "=+" operator?

    https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/operators/increment-operator

提交回复
热议问题