Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
'id': dynamische initialisatie van draadgegevens niet toegestaan in beheerde/WinRT-code
Opmerkingen
In beheerde of WinRT-code kunnen variabelen die zijn gedeclareerd met behulp van het kenmerk __declspec(thread) opslagclassificatie of de thread_local-classificatieaanduiding voor opslagklassen niet worden geïnitialiseerd met een expressie waarvoor evaluatie tijdens runtime is vereist. Een statische expressie is vereist voor het initialiseren __declspec(thread) of thread_local gegevens in deze runtime-omgevingen.
Example
In het volgende voorbeeld wordt C2482 gegenereerd in beheerde (/clr) code en in WinRT (/ZW) code.
// C2482.cpp
// For managed example, compile with: cl /EHsc /c /clr C2482.cpp
// For WinRT example, compile with: cl /EHsc /c /ZW C2482.cpp
#define Thread __declspec( thread )
Thread int tls_i1 = tls_i1; // C2482
int j = j; // OK in C++; C error
Thread int tls_i2 = sizeof( tls_i2 ); // Okay in C and C++
U kunt dit probleem oplossen door thread-lokale opslag te initialiseren met behulp van een constante, constexprof statische expressie. Voer eventuele threadspecifieke initialisatie afzonderlijk uit.