Difficulty: Easy
Correct Answer: true, false, and unary + can be overloaded.
Explanation:
Introduction / Context:
C# permits overloading many unary operators to customize semantics for user-defined types.
Given Data / Assumptions:
Concept / Approach:
Overloadable unary operators include +, -, !, ~, ++, --, true, and false. Keywords new and is are not overloadable operators.
Step-by-Step Solution:
Verification / Alternative check:
Compile a struct with public static bool operator true(...) and public static bool operator false(...).
Why Other Options Are Wrong:
B and D include non-overloadable keywords; C is incomplete.
Common Pitfalls:
Confusing language keywords with overloadable operators.
Final Answer:
true, false, and unary + can be overloaded.
Discussion & Comments