我有 4 个文件:f.h、f.cpp、g.h、g.cpp。 f.h 和 f.cpp 都包含 g.h,但是 f.cpp 和 g.cpp 有一个共同的辅助函数(注意 f.h 不需要它,但它需要 g 中的定义)。 目前我在 g.h 中有独立的辅助函数(因此 g.cpp 和 f.cpp 都包含它)。然而,这让我害怕,因为: 1.谁包含了f.h就可以自由使用(意思是封装) 2.如果他有一个与自由函数同名的函数,它将无法编译
我真的很希望有一个没有代码重复的解决方案(它不是一个很大的辅助函数,只有几行。这是原则:P)。
最佳答案
创建g_f_private.h
。在其中添加仅由 f.cpp
和 g.cpp
使用的所有辅助类/函数/声明。
#nclude
它在 f.cpp
和 g.cpp
中。
不要将其暴露给 f.h
和 g.h
的用户。
关于c++ - 在哪里放置 2 个文件的辅助函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37222608/