gpt4 book ai didi

c# - 许多 IF 语句与委托(delegate)?

转载 作者:太空宇宙 更新时间:2023-11-03 11:18:37 27 4
gpt4 key购买 nike

反复使用 if 语句,还是只使用一次,然后使用委托(delegate)根据 IF 语句的输出调用函数,对性能来说哪个更好?我想说答案显然是委托(delegate),但我不确定反复使用不同的方法是否比许多执行相同操作的 IF 语句更快或更慢。我希望我解释正确。

PS 如果重要的话,我需要了解的框架是 XNA。

最佳答案

你有你的权衡。最好的答案已经评论过了,那就是对两者进行分析,然后找出答案。 IF 语句可能会占用更多 CPU,因为它必须一次又一次地进行比较。另一方面,使用委托(delegate)会占用更多内存,这是您需要保留的另一个对象。

就我个人而言,我最喜欢做的事情(如果适用,不知道你的问题的完整上下文)是将你的 IF ELSE 语句变成一个 switch-case。这对于状态机和其他重复过程非常有效,而且您消除了 IF 附带的所有分支。但是,这是假设您要检查的值都在相对接近的范围内,否则会给编译器带来很多痛苦。

关于c# - 许多 IF 语句与委托(delegate)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11820169/

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