Erlang/OTP应用程序的头文件位置
我应该将Erlang/OTP应用程序的Erlang/OTP应用程序的头文件位置,erlang,directory-structure,otp,Erlang,Directory Structure,Otp,我应该将Erlang/OTP应用程序的.hrl头文件放在/src或/include目录中吗?来自: src必需。包含Erlang源代码、.app文件的源代码和应用程序本身使用的内部包含文件。[……] 包括-可选。用于必须可从其他应用程序访问的公共包含文件 这也可以解释为: 用例1: 您的项目有-定义d常量、解析转换等,这是其他人使用您的代码所必需的。示例包括qlc或webmachine 解决方案:将您的.hrl文件放入/include中。只要项目位于代码路径上,代码的客户端就可以使用-in
.hrl
头文件放在/src
或/include
目录中吗?来自:
- src必需。包含Erlang源代码、.app文件的源代码和应用程序本身使用的内部包含文件。[……]
- 包括-可选。用于必须可从其他应用程序访问的公共包含文件
这也可以解释为: 用例1: 您的项目有
-定义d常量、解析转换等,这是其他人使用您的代码所必需的。示例包括qlc
或webmachine
解决方案:将您的.hrl
文件放入/include
中。只要项目位于代码路径上,代码的客户端就可以使用-include_lib()
加载.hrl
文件
用例2:您已将公共常量等集中在.hrl
文件中。这些常量将由项目代码在内部使用。这意味着任何时候都不需要任何客户端访问它们
解决方案:将.hrl
文件放入/src
中。您的代码可以使用-include()
拉入.hrl
文件
请记住,这两个include指令都是编译时构造。您可以将所有头文件放入/src
,使用-include()
编译代码,然后通过将头文件复制到/include
中,有选择地“导出”要发布的头文件。我经常这样做,因为它使我的编译过程更容易——没有futz使用的代码路径——而且它使我的客户机代码更干净——他们可以使用-include_lib()
来查找我的公共头文件
--凯文
相关的: