【问题标题】:C naming sub-module functions [closed]C命名子模块功能
【发布时间】:2018-01-17 00:39:51
【问题描述】:

这可能有点跑题了,而且很大程度上基于意见,但我认为以下问题值得讨论:

假设您正在处理一个更大的项目,该项目由多个文件和多个标题组成。例如,您有一个保存管理的文件(子模块),另一个处理绘图等。您认为在子模块中命名函数的最佳方式是什么?

我想从哪个文件中看到声明/实现的函数,这在开发和错误修复过程中会有很大帮助。

我目前的做法:

  • 在每个函数前面加上声明它的头文件的名称,例如(在头文件 save.h 中声明的函数):save_load_savefile();save_save_game(); 等。

你知道其他可能更好的选择吗?

【问题讨论】:

  • “这可能有点跑题了,而且很大程度上基于意见”——你是对的。
  • 释义:“我知道这个问题不适合这个论坛,但我还是要提出来。”认真的吗?
  • 找到了stackoverflow.com/questions/26278185/…,它也询问了命名,所以它可能不是不合适的。
  • 是的 - 这是一个非常好的方法。还有extern int save_SomeObjectsave_SomeType。对于大型项目,您需要一些名称约定管理。

标签: c naming-conventions header-files naming


【解决方案1】:

一个想法是为每个具有函数指针作为元素的子模块创建一个 (static) struct。调用看起来像:

fileSave.load_savefile()

通过这种方式,您正在朝着 C++ 的方向前进。当然,您也可以决定以轻松的方式使用 C++,并创建类。

【讨论】:

  • 有趣的想法
  • static struct {void (*foo_visible)(void);} FooModule ={.foo_visible=&_foo_implemented}; - 看起来工作正常。
  • @Sasszem 感谢您告诉我。
猜你喜欢
  • 2019-07-16
  • 2011-05-30
  • 1970-01-01
  • 2014-08-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多