Odkaz na nesdílený člen vyžaduje odkaz na objekt.

V kódu jste odkazovali na nesdíleného člena a nepodařilo se vám poskytnout odkaz na objekt. Název třídy nelze použít k získání oprávnění člena, který není sdílený. Instance musí být nejprve deklarována jako proměnná objektu a následně odkazována názvem proměnné.

ID chyby: BC30469

Oprava této chyby

  1. Deklarujte instanci jako proměnnou objektu.

  2. Odkazujte na instanci podle názvu proměnné.

Imports System

Namespace Ecommerce
    Public Class Customer
        Private Property AccountNumber As Integer

        Public Sub New (accountNumber As Integer)
            AccountNumber = accountNumber
        End Sub

        Public Function GetAccountNumber ()
            return AccountNumber + accountNumber
        End Function
    End Class
End Namespace

Module Program
Sub Main(args As String())
        ' Declaring the instance as an object variable:
        Dim firstCustomer As New Ecommerce.Customer(1)
        Dim firstCustomerAccountNumber As Integer

        ' You must not use Ecommerce.Customer.GetAccountNumber() because you
        ' cannot access non-shared Function 'GetAccountNumber' in shared context.
        ' Otherwise, use the instance you've just created to call the function:
        firstCustomerAccountNumber = firstCustomer.GetAccountNumber()
        Console.WriteLine(firstCustomerAccountNumber)
    End Sub
End Module

Viz také