Практическое руководство. Преобразование пользовательского типа в структуру Visual Basic
Обновлен: Ноябрь 2007
Оператор Type приложения Visual Basic 6.0, обновлен до оператора Structure приложения Visual Basic 2008. В этом разделе также рассматриваются два других варианта обновления типа: преобразование в класс или преобразование в интерфейс.
В приведенных ниже процедурах рассматривается следующий тип Visual Basic 6.0:
Type Customer
Dim FirstName As String
Dim LastName As String
Dim Id As Long
End Type
Private Function FormatFullName(aCustomer As Customer) As String
FormatFullName = aCustomer.FirstName & " " & aCustomer.LastName
End Function
Мастер обновления автоматически обновляет тип Visual Basic 6.0 в структуру Visual Basic 2008. Structure — это тип, поддерживающий члены, например методы и свойства.
Порядок обновления типа до структуры
Запустите Мастер обновления.
Примечание. Мастер обновления — это средство, используемое для обновления приложений Visual Basic 6.0 до версии Visual Basic 2008. Он автоматически запускается при открытии проекта Visual Basic 6.0 в Visual Basic 2008. Дополнительные сведения см. в разделе Практическое руководство. Обновление проекта с помощью мастера обновления Visual Basic.
Чтобы воспользоваться всеми преимуществами других возможностей типа Structure, следует выбрать методы, которые лучше соответствуют структуре. В этом примере метод FormatFullName может быть преобразован в метод FormatFullName в структуре:
Structure Customer Dim FirstName As String Dim LastName As String Dim Id As Integer Public Function FormatFullName() As String Return FirstName & " " & LastName End Function End Structure
Мастер обновления автоматически обновляет тип Visual Basic 6.0 до структуры Visual Basic 2008. Тип Class поддерживает те же члены, что и Structure, но является ссылочным типом. Класс может выступать в качестве базового класса, а структура не может.
Порядок обновления до класса
Запустите Мастер обновления.
Замените ключевые слова Structure на ключевые слова Class.
Чтобы воспользоваться всеми преимуществами других возможностей типа Class, следует выбрать методы, которые лучше соответствуют структуре. В следующем примере кода показано включение свойства FormatFullName в класс, а также свойство Id .
Class Customer Dim FirstName As String Dim LastName As String Private idValue As Integer Public Property Id() As Integer Get Return idValue End Get Set(ByVal Value As Integer) idValue = Value End Set End Property Public Function FormatFullName() As String Return FirstName & " " & LastName End Function End Class
Третьим вариантом является преобразование структуры в интерфейс.
Обновление до интерфейса
Запустите Мастер обновления.
Замените ключевые слова Structure на ключевые слова Interface.
Замените переменные объявлениями свойств. Реализацию включать не следует.
Добавьте методы, но удалите реализацию.
Код может выглядеть следующим образом:
Interface Customer Property FirstName() As String Property LastName() As String Property Id() As String Function FormatFullName() As String End Interface
Интерфейс затем может быть реализован другим классом. Определение приведено ниже.
Class NewCustomer Implements Customer Public Property FirstName() As String Implements Customer.FirstName Get ' Add code here. End Get Set(ByVal Value As String) ' Add code here. End Set End Property Public Property Id() As String Implements Customer.Id Get ' Add code here. End Get Set(ByVal Value As String) ' Add code here. End Set End Property Public Property LastName() As String Implements Customer.LastName Get ' Add code here. End Get Set(ByVal Value As String) ' Add code here. End Set End Property Public Function FormatFullName() As String _ Implements Customer.FormatFullName ' Add code here. End Function End Class
См. также
Задачи
Практическое руководство. Обновление проекта с помощью мастера обновления Visual Basic