Практическое руководство. Использование класса, в котором определяются операторы
Обновлен: Ноябрь 2007
При использовании класса или структуры, определяющей свои собственные операторы, можно получить доступ к этим операторам из Visual Basic.
Определение оператора в классе или структуре называется также перегрузкой оператора.
Пример
В следующем примере осуществляется доступ к SQL структуре SqlString, в которой определены операторы преобразования (Функция CType) в обоих направлениях между строкой SQL и строкой Visual Basic. Используйте CType(SQL string expression, String) для преобразования строки SQL к строке Visual Basic и CType(Visual Basic string expression, SqlString) для преобразования в обоих направлениях.
' Insert the following line at the beginning of your source file.
Imports System.Data.SqlTypes
Public Sub setJobString(ByVal g As Integer)
Dim title As String
Dim jobTitle As System.Data.SqlTypes.SqlString
Select Case g
Case 1
title = "President"
Case 2
title = "Vice President"
Case 3
title = "Director"
Case 4
title = "Manager"
Case Else
title = "Worker"
End Select
jobTitle = CType(title, SqlString)
MsgBox("Group " & CStr(g) & " generates title """ _
& CType(jobTitle, String) & """")
End Sub
Структура SqlString определяет оператор преобразования (Функция CType) из String в SqlString и из SqlString в String. Оператор, который присваивает titlejobTitle, использует первый оператор и второй вызов Функция MsgBox (Visual Basic).
Компиляция кода
Убедитесь, что используемый класс или структура определяет оператор, который нужно использовать. Не следует предполагать, что класс или структура определяет каждый оператор как доступный для перегрузки. Список доступных операторов содержится в разделе Оператор Operator.
Включите соответствующий оператор Imports для строки SQL в начале исходного файла (в этом случае System.Data.SqlTypes).
Проект должен ссылаться на System.Data и System.XML. Если нужно добавить их, см. Практическое руководство. Добавление и удаление ссылок в Visual Studio (C#).
См. также
Задачи
Практическое руководство. Определение оператора
Практическое руководство. Определение оператора преобразования
Практическое руководство. Вызов процедуры оператора
Практическое руководство. Объявление структуры
Основные понятия
Явные и неявные преобразования
Расширяющие и сужающие преобразования