屏蔽c++头文件的内容

Mask the content of C++ header files

本文关键字:文件 c++ 屏蔽      更新时间:2023-10-16

我必须交付一个小的c++软件。我想用一些实现来掩盖头文件(我使用了表达式模板),以便最终用户无法辨认,因此他们无法修改它们。我不能将代码包含在静态或动态库中。是否有任何方法来掩盖头文件的内容?

谢谢!

如果这是一个仅头文件的实现,除了将变量和受保护/私有成员函数重命名为没有意义的名称外,您可以做的事情并不多(因此所有内容都称为xx, yy, aa, bb, ll l1, I等)

如果你的功能是独一无二的,并且作为源代码有很高的价值,那么就会有人努力去"消除它的混淆"。如果我可以花半个小时左右的时间来澄清一些IOCCC代码,并使其具有合理的可读性和可理解性,我不确定您会使用什么技术来使其更难(当然,代码可能更大,所以它将花费更长的时间,但它几乎肯定是毫无意义的)。

我想用一些实现来屏蔽头文件(我使用了表达式模板),以使最终用户难以辨认,因此他们无法修改它们。

为什么用户不修改代码对你来说很重要?

我不能将代码包含在静态或动态库中。

你能详细说明原因吗?

是否有任何方法来屏蔽头文件的内容?

没有。头文件在编译时以文本形式包含。

你可以混淆代码,这样它就没有任何语义意义(用不同数量的下划线替换每个函数名),但如果对你的客户来说,他们改变它很重要,他们仍然可以这样做(只是花更多的精力来理解你所做的)。