gpt4 book ai didi

c# - 我可以在 C# 中重载条件运算符吗?

转载 作者:行者123 更新时间:2023-11-30 13:48:42 27 4
gpt4 key购买 nike

我确实通过了thisthis在实际发布之前。但那些是针对 C++ 的。同样的事情也适用于 C# 吗?我提供的第二个链接指出条件运算符不能重载,我没有看到原因(假设同样适用于 C#)。有人可以提供进一步阅读的链接,或者只是澄清一下吗?

编辑:

我没有涉及任何需要重载此运算符的实际场景,但我只是好奇为什么它不能重载。仅仅是因为没有任何实际可能的情况,这种重载可以提供任何重要的功能吗?

最佳答案

可重载运算符的列表是 here .有些你可以,有些你不能。

This页面显示了如何重载可以重载的那些。

至于条件运算符 (?:),不,你不能重载它。它特定于 bool 值。如果你确实重载了它意味着什么?它是 if/then/else 的简写。

我想您可以重新表述问题的方式是:“为什么我不能重载 if/then/else”?

真正的原因很可能与语言的设计者选择不实现它有关。更有可能的是,为该运算符提供重载并不能提供足够的好处来值得为使其可重载而进行的测试和努力。简而言之,这可能是时间/金钱的原因。对于添加到计算机语言的每个功能,这意味着时间、精力和测试,必须与功能提供的好处相平衡。

最后,有些事情不值得实现。虽然我确信您可以从中找到一些 好处,但实现成本可能会超过这些好处。

关于c# - 我可以在 C# 中重载条件运算符吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11690053/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com