Dela via


Överlagringar (Visual Basic)

Anger att en egenskap eller procedur redeclares en eller flera befintliga egenskaper eller procedurer med samma namn.

Kommentarer

Överlagring är en metod för att tillhandahålla mer än en definition för en viss egenskap eller ett angivet procedurnamn i samma omfång. Redeclaring av en egenskap eller procedur med en annan signatur kallas ibland dölja med signatur.

Regler

  • Deklarationskontext. Du kan bara använda Overloads i en egenskaps- eller procedurdeklarationssats.

  • Kombinerade modifierare. Du kan inte ange Overloads tillsammans med Skuggor i samma procedurdeklaration.

  • Nödvändiga skillnader. Signaturen i den här deklarationen måste skilja sig från signaturen för varje egenskap eller procedur som den överbelastar. Signaturen består av egenskapen eller procedurnamnet tillsammans med följande:

    • antalet parametrar

    • parametrarnas ordning

    • parametrarnas datatyper

    • antalet typparametrar (för en allmän procedur)

    • returtypen (endast för en konverteringsoperatorprocedur)

    Alla överlagringar måste ha samma namn, men var och en måste skilja sig från alla andra i en eller flera av ovanstående avseenden. På så sätt kan kompilatorn särskilja vilken version som ska användas när koden anropar egenskapen eller proceduren.

  • Otillåtna skillnader. Att ändra ett eller flera av följande är inte giltigt för överlagring av en egenskap eller procedur, eftersom de inte ingår i signaturen:

    • om det returnerar ett värde (för en procedur)

    • datatypen för returvärdet (förutom en konverteringsoperator)

    • namnen på parametrarna eller typparametrarna

    • begränsningarna för typparametrarna (för en allmän procedur)

    • parametermodifierarnyckelord (till exempel ByRef eller Optional)

    • nyckelord för egenskaps- eller procedurmodifierare (till exempel Public eller Shared)

  • Valfri modifierare. Du behöver inte använda Overloads modifieraren när du definierar flera överlagrade egenskaper eller procedurer i samma klass. Men om du använder Overloads i någon av deklarationerna måste du använda den i alla.

  • Skuggning och överlagring.Overloads kan också användas för att skugga en befintlig medlem, eller en uppsättning överlagrade medlemmar, i en basklass. När du använder Overloads på det här sättet deklarerar du egenskapen eller metoden med samma namn och samma parameterlista som basklassmedlemmen, och du anger inte nyckelordet Shadows .

Om du använder Overrideslägger kompilatorn implicit till Overloads så att biblioteks-API:erna fungerar med C# enklare.

Modifieraren Overloads kan användas i följande sammanhang:

Se även