被Python玩的Kenny 2021-02-25 14:23 采纳率: 0%
浏览 27

rsocket中代码段多次重复的含义

Github地址:https://github.com/linux-rdma/rdma-core/blob/master/librdmacm/rsocket.c,这里面的rs_set_qp_size和ds_set_qp_size两个函数出现了代码段重复编写的情况,有时候看其他开源代码也有看到重复写的情况,但是baidu不到任何关于这方面的信息。原维护者关闭了issue,所以无法直接提问。

请问各位C/C++大佬,有时候代码段重复写(并且我并没有看出来重复写会有什么用)是因为什么我不知道的技巧或者避坑吗?还是说只是单纯的多写了一遍(不多写也没啥影响)。

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-07-24 11:00
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    在C/C++编程中,代码重复是常见的现象,特别是在处理数据结构、算法或函数时。在某些情况下,代码重复确实可以提高程序的可读性和可维护性,因为这样可以让程序员更容易理解和修改代码。

    例如,在你的例子中,rs_set_qp_sizeds_set_qp_size 函数都有一个共同的目的——设置QoS队列大小。这两个函数中的最大值都是通过 ucma_max_qpsize 计算得到,并且如果队列尺寸超过这个最大值,则将队列尺寸设为最大值。此外,这两个函数都会检查队列尺寸是否小于最小值,如果是,则将其设为最小值。

    这种重复的实现方式可以在多个地方使用,比如当有多个线程或进程共享同一个队列时,或者当队列可能需要动态调整其大小时。这样做的好处是可以避免每次调用都重新计算最大值,从而减少不必要的计算开销。

    然而,需要注意的是,过度的代码重复可能会导致一些问题,如增加理解成本、降低代码的可读性等。因此,在设计代码时应该权衡代码的重用价值与复杂度,确保代码质量。

    总之,代码重复是一种常见的编程现象,它可以帮助提高代码的可读性和可维护性,但过度的重复可能导致问题。在实际开发过程中,应该根据具体情况来决定是否进行代码重复。

    评论

报告相同问题?

悬赏问题

  • ¥15 关于#自动化#的问题:如何通过电脑控制多相机同步拍照或摄影(相机或者摄影模组数量大于60),并将所有采集的照片或视频以一定编码规则存放至规定电脑文件夹内
  • ¥20 深信服vpn-2050这台设备如何配置才能成功联网?
  • ¥15 Arduino的wifi连接,如何关闭低功耗模式?
  • ¥15 Android studio 无法定位adb是什么问题?
  • ¥15 angular项目错误
  • ¥20 需要帮我远程操控一下,运行一下我的那个代码,我觉得我无能为力了
  • ¥20 有偿:在ubuntu上安装arduino以及其常用库文件。
  • ¥15 请问用arcgis处理一些数据和图形,通常里面有一个根据点划泰森多边形的命令,直接划的弊端是只能执行一个完整的边界,但是我们有时候会用到需要在有很多边界内利用点来执行划泰森多边形的命令
  • ¥30 在wave2foam中执行setWaveField时遇到了如下的浮点异常问题,请问该如何解决呢?
  • ¥750 关于一道数论方面的问题,求解答!(关键词-数学方法)