4

我一直在阅读有关SAL的内容,但我不清楚指针类型的注释是否适用于引用或其指向的值。例如,如果我有:

void f(_In_ type* t);

_In_表示“参数必须在pre-state有效,不会被修改。” 它的应用在这里是否意味着t的地址不会改变,或者t的值?

4

1 回答 1

4

在您的示例中,_In_意味着

  • VS 代码分析将验证调用者是否将非空指针传递给已初始化的缓冲区。
  • 在函数中取消引用之前, VS Code Analysis不会验证检查是否为 null;假定在函数本身中为非空。通过更改为,VS Code Analysis在取消引用之前验证是否检查了 null。tt_In__In_opt_t
  • VS 代码分析将验证该函数仅从type指向的内存中读取“一个元素” t,例如将取消引用的指针的值分配给变量。
于 2013-10-09T23:12:24.650 回答