警告 C26406
請勿將原始指標指派給
owner<T>
(r.3)
此警告會從 C++ 核心指導方針強制執行 R.3。 如需詳細資訊,請參閱 C++ 核心指導方針 R.3 。
備註
擁有者會從配置或其他擁有者初始化。 當您將原始指標的值指派給擁有者指標時,就會發生這個警告。 原始指標不保證擁有權轉移;原始擁有者可能仍可保存資源,並嘗試釋放它。 您可以從擁有者將值指派給原始指標。 原始指標是有效的用戶端,可存取資源,但無法加以管理。
程式碼分析名稱: DONT_ASSIGN_RAW_TO_OWNER
範例
使用 物件的位址:
此範例會嘗試將 位址 defaultSocket
的擁有權指派給擁有者指標 socket
:
gsl::owner<Socket*> socket = defaultSocket ? &defaultSocket : new Socket(); // C26406