屏蔽c++头文件的内容
Mask the content of C++ header files
我必须交付一个小的c++软件。我想用一些实现来掩盖头文件(我使用了表达式模板),以便最终用户无法辨认,因此他们无法修改它们。我不能将代码包含在静态或动态库中。是否有任何方法来掩盖头文件的内容?
谢谢!
如果这是一个仅头文件的实现,除了将变量和受保护/私有成员函数重命名为没有意义的名称外,您可以做的事情并不多(因此所有内容都称为xx, yy, aa, bb, ll l1, I等)
如果你的功能是独一无二的,并且作为源代码有很高的价值,那么就会有人努力去"消除它的混淆"。如果我可以花半个小时左右的时间来澄清一些IOCCC代码,并使其具有合理的可读性和可理解性,我不确定您会使用什么技术来使其更难(当然,代码可能更大,所以它将花费更长的时间,但它几乎肯定是毫无意义的)。
我想用一些实现来屏蔽头文件(我使用了表达式模板),以使最终用户难以辨认,因此他们无法修改它们。
为什么用户不修改代码对你来说很重要?
我不能将代码包含在静态或动态库中。
你能详细说明原因吗?
是否有任何方法来屏蔽头文件的内容?
没有。头文件在编译时以文本形式包含。
你可以混淆代码,这样它就没有任何语义意义(用不同数量的下划线替换每个函数名),但如果对你的客户来说,他们改变它很重要,他们仍然可以这样做(只是花更多的精力来理解你所做的)。
相关文章:
- .cpp和.h文件中的模板专用化声明
- 为什么两个不同的未命名名称空间可以共存于一个cpp文件中
- 文本文件中的单词链表
- CMake-按正确顺序将项目与C运行时对象文件链接
- 使用新行和不使用新行读取文件
- 在C++程序中输入的文本文件将不起作用,除非文本被复制和粘贴
- 挂起和取消挂起一个文件DLL
- 如何确定我已使用非编码文件到达 EOF?
- 命名空间中具有.h和.cpp文件的类
- 如何使用ndk-build.cmd构建Android.so文件
- 从包含m行的文件中提取n行,必要时(惰性地)重复该文件
- 读取文件并输入到矢量中
- 在C++中查找文件
- c++库的公共头文件中应该包含什么
- 用c++从输入文件中读取另一行
- Cppcheck生成xml转储文件
- 读取文件的最后一行并输入到链接列表时出错
- 无法编译 rtmidi 测试 cmidiin.cpp 文件, 非法指令
- 如何将内容数组写入文本文件?
- C++ Windows 驱动程序MSB3030无法复制该文件,因为它找不到