gpt4 book ai didi

delphi - Delphi编译器是否执行优化?

转载 作者:行者123 更新时间:2023-12-03 18:54:22 25 4
gpt4 key购买 nike

我正在使用Delphi 7 IDE。 Delphi编译器是否像C ++编译器在以下链接中所做的那样优化代码?

http://msdn.microsoft.com/en-us/library/aa366877(VS.85).aspx

WCHAR szPassword[MAX_PATH];
// Retrieve the password
if (GetPasswordFromUser(szPassword, MAX_PATH))
UsePassword(szPassword);
// Clear the password from memory
SecureZeroMemory(szPassword, sizeof(szPassword));


如果在此示例中调用了 ZeroMemory而不是 SecureZeroMemory,则编译器可以优化该调用,因为在超出范围之前不会读取 szPassword缓冲区。密码将保留在应用程序堆栈中,可以在故障转储中被捕获或被恶意应用程序探测。

最佳答案

是的,Delphi当然会执行优化。但是,它不会执行SecureZeroMemory函数要规避的优化。无需在Delphi中使用该功能。只需使用普通的ZeroMemory甚至FillChar。它们不是宏,也不执行Delphi认为是可以优化的未使用的赋值语句。

关于delphi - Delphi编译器是否执行优化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4083747/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com