警告 C26406
请勿将原始指针分配给
owner<T>
(r.3)
此警告强制实施 C++ Core Guidelines R.3。 有关详细信息,请参阅 C++ Core Guidelines R.3。
注解
所有者是从分配或其他所有者初始化的。 将原始指针中的值分配给所有者指针时,会发出此警告。 原始指针不保证转移所有权;原始所有者可能仍可保留资源并尝试释放它。 可以将所有者的值分配给原始指针。 原始指针是有效的客户端,可访问资源,但不能管理资源。
代码分析名称:DONT_ASSIGN_RAW_TO_OWNER
示例
使用对象的地址:
此示例尝试将 defaultSocket
地址的所有权分配给所有者指针 socket
:
gsl::owner<Socket*> socket = defaultSocket ? &defaultSocket : new Socket(); // C26406
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈