ILGenerator::DeclareLocal Method (Type^, Boolean)
Declares a local variable of the specified type, optionally pinning the object referred to by the variable.
Assembly: mscorlib (in mscorlib.dll)
Parameters
- localType
-
Type:
System::Type^
A Type object that represents the type of the local variable.
- pinned
-
Type:
System::Boolean
true to pin the object in memory; otherwise, false.
Return Value
Type: System.Reflection.Emit::LocalBuilder^A LocalBuilder object that represents the local variable.
| Exception | Condition |
|---|---|
| ArgumentNullException | localType is null. |
| InvalidOperationException | The containing type has been created by the TypeBuilder::CreateType method. -or- The method body of the enclosing method has been created by the MethodBuilder::CreateMethodBody method. |
| NotSupportedException | The method with which this ILGenerator is associated is not represented by a MethodBuilder. |
The local variable is created in the current lexical scope; for example, if code is being emitted in a for loop (For loop in Visual Basic), the scope of the variable is the loop.
In unsafe code, an object must be pinned before it can be referred to by an unmanaged pointer. While the referenced object is pinned, it cannot be moved by garbage collection.
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.1