我知道如何为C ++ / CLI和.NET执行此操作,但C ++没有属性。场景是这样的:
我们希望在二进制文件中提供一些方法,但我们不希望所有客户都使用它们。如果客户需要它,我们可以告诉他签名是什么,或者给他发送另一个非二进制文件。
答案 0 :(得分:2)
我认为你无法控制它。由于您必须发布库的头文件,因此您将公开整个界面,即使不通过intellisense也是如此。
但是,您应该认为还有其他工具在做同样的事情,许多开发人员都在使用它们(例如Visual Assist)。
如果你需要隐藏一些实现细节,更好的解决方案是应用pimpl习惯用法并在头文件中提供具有“公共”可用方法的接口类。
实现类只包含在包含已编译的cpp文件中,并且只在public头文件中声明转发。