Bagikan melalui


MethodBuilder.SetReturnType(Type) Metode

Definisi

Mengatur jenis pengembalian metode.

public:
 void SetReturnType(Type ^ returnType);
public void SetReturnType (Type? returnType);
public void SetReturnType (Type returnType);
member this.SetReturnType : Type -> unit
Public Sub SetReturnType (returnType As Type)

Parameter

returnType
Type

Objek Type yang mewakili jenis pengembalian metode.

Pengecualian

Metode saat ini bersifat generik, tetapi bukan definisi metode generik. Artinya, IsGenericMethod properti adalah true, tetapi IsGenericMethodDefinition propertinya adalah false.

Contoh

Contoh kode berikut menggunakan DefineGenericParameters metode untuk membuat metode generik. Metode SetParameters ini digunakan untuk memberikan metode satu parameter, yang jenisnya akan ditentukan oleh parameter jenis generik pertama. Metode SetReturnType ini digunakan untuk memberikan metode jenis pengembalian, yang ditentukan oleh parameter jenis generik kedua.

Kode ini adalah bagian dari contoh yang lebih besar yang disediakan untuk metode .DefineGenericParameters

// Defining generic parameters for the method makes it a
// generic method. By convention, type parameters are
// single alphabetic characters. T and U are used here.
//
array<String^>^ genericTypeNames = {"T", "U"};
array<GenericTypeParameterBuilder^>^ genericTypes =
    sampleMethodBuilder->DefineGenericParameters(
    genericTypeNames);
// Defining generic parameters for the method makes it a
// generic method. By convention, type parameters are
// single alphabetic characters. T and U are used here.
//
string[] typeParamNames = {"T", "U"};
GenericTypeParameterBuilder[] typeParameters =
    demoMethod.DefineGenericParameters(typeParamNames);

// The second type parameter is constrained to be a
// reference type.
typeParameters[1].SetGenericParameterAttributes(
    GenericParameterAttributes.ReferenceTypeConstraint);
' Defining generic parameters for the method makes it a
' generic method. By convention, type parameters are 
' single alphabetic characters. T and U are used here.
'
Dim typeParamNames() As String = {"T", "U"}
Dim typeParameters() As GenericTypeParameterBuilder = _
    demoMethod.DefineGenericParameters(typeParamNames)

' The second type parameter is constrained to be a 
' reference type.
typeParameters(1).SetGenericParameterAttributes( _
    GenericParameterAttributes.ReferenceTypeConstraint)
// Set parameter types for the method. The method takes
// one parameter, and its type is specified by the first
// type parameter, T.
array<Type^>^ parameterTypes = {genericTypes[0]};
sampleMethodBuilder->SetParameters(parameterTypes);

// Set the return type for the method. The return type is
// specified by the second type parameter, U.
sampleMethodBuilder->SetReturnType(genericTypes[1]);
// Set parameter types for the method. The method takes
// one parameter, and its type is specified by the first
// type parameter, T.
Type[] parms = {typeParameters[0]};
demoMethod.SetParameters(parms);

// Set the return type for the method. The return type is
// specified by the second type parameter, U.
demoMethod.SetReturnType(typeParameters[1]);
' Set parameter types for the method. The method takes
' one parameter, and its type is specified by the first
' type parameter, T.
Dim params() As Type = {typeParameters(0)}
demoMethod.SetParameters(params)

' Set the return type for the method. The return type is
' specified by the second type parameter, U.
demoMethod.SetReturnType(typeParameters(1))

Keterangan

Gunakan metode ini untuk mengatur jenis pengembalian metode generik, ketika jenis pengembalian ditentukan oleh salah satu parameter jenis generik metode. Jika jenis pengembalian memiliki pengubah kustom opsional atau diperlukan, seperti IsConst, gunakan SetSignature(Type, Type[], Type[], Type[], Type[][], Type[][]) metode kelebihan beban.

Memanggil metode ini menggantikan jenis pengembalian yang ditetapkan menggunakan TypeBuilder.DefineMethod metode .

Berlaku untuk

Lihat juga