如何阻止客户端检查库中的源代码
How to stop clients from examining the source code in your library
在C++中编写库时,我们需要在头文件中隐藏实现。但是我们需要包含源文件以使库正常工作。但是用户可以轻松地在库中找到您的源文件。那么如何隐藏源文件呢?像 boost 这样的著名图书馆是做什么的?
不能在头文件中隐藏源代码。 唯一的方法是将代码放在.cpp文件中,以便无法查看。 此外,如果速度是一个问题,您可以使函数inline
要求编译器以这种方式优化它们。
STL 和 boost 附带源代码,因此您可以阅读它(但由于它们采用的命名约定,它不容易阅读(。
如果你绝对必须分发源代码,你最好混淆代码。
但是,为什么您不希望您的客户看到源头?如果你觉得你放弃了太多,那就向他们收取更多的来源费用,只提供一个可分发的库。
有关混淆器,请参阅:https://stackoverflow.com/questions/1025494/obfuscating-c-c-code
相关文章:
- valgrind-hellgrind与泄漏检查的结果不同
- C++模板来检查友元函数的存在
- 检查输入是否不是整数或数字
- 在Linux中哪里可以找到互斥、未来等的源代码
- 试图让变量检查数组中的某些内容
- 检查值是否在集合p1和p2中,但不在p3中
- C++概念:如何使用'concept'检查模板化结构的属性?
- 概念TS检查忽略私有访问修饰符
- 检查 std::shared_ptr<> 的当前底层类型是否为 T
- 在c++中检查长方体是否尽可能快地重叠(无迭代)
- 如何在C++中检查2D数组中负值的输入验证
- 如果编译的源代码是特定于它编译的硬件的,我们如何分发它
- C++:正在检查LinkedList中的回文-递归方法-错误
- 使用cmake从源代码构建MySQL连接器/C++失败(与以前的声明冲突)
- 使用for循环检查数组中的重复项
- 如何检查一个c++字符串中有多少相同的字符/数字
- 如何使用 cmake 在构建源代码之前检查某些库是否存在
- 如何阻止客户端检查库中的源代码
- 如何检查c++源代码中是否有任何系统/shell调用
- 如何检查如果MS编译器将编译我的源代码