【发布时间】:2010-11-03 02:18:13
【问题描述】:
我正在使用 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 optimization compiler-construction compiler-optimization