Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Nepřiřazovat nezpracovaný ukazatel k objektu
owner<T>(r.3)
Toto upozornění vynucuje R.3 z pokynů pro C++ Core Guidelines. Další informace najdete v tématu C++ Core Guidelines R.3.
Poznámky
Vlastníci se inicializují z přidělení nebo jiných vlastníků. K tomuto upozornění dochází, když přiřadíte hodnotu z nezpracovaného ukazatele na ukazatel vlastníka. Nezpracované ukazatele nezaručují převod vlastnictví; původní vlastník může prostředek stále uchovávat a pokoušet se ho uvolnit. Je v pořádku přiřadit hodnotu od vlastníka k nezpracovaným ukazateli. Nezpracované ukazatele jsou platnými klienty pro přístup k prostředkům, ale ne ke správě.
Název analýzy kódu: DONT_ASSIGN_RAW_TO_OWNER
Příklad
Pomocí adresy objektu:
Tato ukázka se pokusí přiřadit vlastnictví adresy ukazatele defaultSocketvlastníkasocket:
gsl::owner<Socket*> socket = defaultSocket ? &defaultSocket : new Socket(); // C26406