在C#,C++和Java中,当您创建一个使用参数的构造函数时,默认的无参数函数就会消失.我一直都接受这个事实,但现在我开始想知道为什么.
这种行为的原因是什么?它只是一个"安全措施/猜测"说"如果你已经创建了自己的构造函数,你可能不希望这个隐含的构造函数"?或者它是否有技术原因使得编译器在您自己创建构造函数后无法添加一个?
在C#中,您可以重载运算符,例如+
和*
.在他们的数学解释中,这些算子具有明确的优先顺序.
重载时是否保留此顺序,是否以某种确定性方式更改,或者您是否也可以重载优先顺序?