草庐IT

constantfolding

全部标签

java - java编译器中的常量折叠是什么?

这个问题在这里已经有了答案:关闭12年前。PossibleDuplicate:isthereanyconceptcalled“ConstantFolding”injava?嗨我遇到过Java编译器使用称为ConstantFolding的东西。这是什么?以及它如何影响?

c++ - 防止编译器不断折叠表达式的技巧

我的程序中有一个字符串文字,我正在尝试创建一个业余校验和以确保该字符串文字没有在可移植可执行文件中被替换。为此,我创建了字符串文字的散列,并将其作为整数文字存储在程序中。现在我有两个文字,一个用于字符串,一个用于散列。在我的代码中,我通过使用以相同方式散列字符串文字的函数来实现校验和,我创建了一个新的运行时散列并根据散列文字检查该散列。问题当然是,通过编译器优化,它可能会预先计算运行时哈希,然后我会根据哈希文字检查哈希文字,并且校验和将始终返回true。所以我正在寻找一种技巧,让编译器认为字符串文字是一个动态字符串,可以是任何东西,这样它就不会对运行时哈希进行常量折叠优化,并且我的代码