gpt4 book ai didi

c - 采访 : function pointers vs switch case

转载 作者:太空狗 更新时间:2023-10-29 17:13:40 27 4
gpt4 key购买 nike

在我的面试中,我被要求为一个有 100 个状态的系统实现一个状态机,其中每个状态依次有 100 个事件,我回答了以下 3 种方法:

  • 如果-否则
  • 开关盒
  • 函数指针

If-else 显然不适合这样的状态机,因此主要比较是 switch-case 与函数指针之间的比较,这是根据我的理解进行的比较:

  • 两者在速度方面几乎相同。
  • Switch-case 的模块化程度低于函数指针
  • 函数指针有更多的内存开销。

谁能确认一下上面的理解是否正确?

最佳答案

函数指针方法可能有一个变体:一个包含函数指针和其他信息的结构。因此,您可以让一个函数处理多种情况。

除此之外,我认为你是对的。另外,我会考虑值得考虑的内存和速度方面的开销,但希望小到最后可以忽略不计。

关于c - 采访 : function pointers vs switch case,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13839512/

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