FreeBasic
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.

как работать с Operator

Участников: 3

Перейти вниз

как работать с Operator Empty как работать с Operator

Сообщение  electrik Сб Окт 04, 2008 11:46 am

привет. вот у меня ко всем такой вопрос. что такое оператор? да я знаю что такое оператор, но во FreeBasic, появилась такая штука для их изменения. вобщем как работать с оператором "operator. я пока не доконца это понимаю, и вот вам пример из мануала. вообще если кто-то с этим разобрался, пора написать главу про операторы в онлайн книгу.

код
Type T

value As Double

Declare Constructor( ByVal x As Double = 0 )

Declare Operator += ( ByVal x As Double )

Declare Operator For()
Declare Operator Step()
Declare Operator Next( ByRef cond As T ) As Integer

Declare Operator Cast() As String

End Type

Constructor T ( ByVal x As Double )
value = x
End Constructor

Operator <= ( ByRef lhs As T, ByRef rhs As T ) As Integer
Operator = ( lhs.value <= rhs.value )
End Operator

Operator T.+= ( ByVal x As Double )
value += x
End Operator

Operator T.for()
End Operator

Operator T.step()
This += 1
End Operator

Operator T.next( ByRef cond As T ) As Integer
Operator = ( This <= cond )
End Operator

Operator T.cast() As String
Operator = Str( value )
End Operator

'' Example Usage

For i As T = 1 To 10
Print i
Next i

electrik

Сообщения : 391
Дата регистрации : 2008-09-02
Возраст : 43
Откуда : галактика Млечный путь, система Солнечная, планета Земля, страна россия, город Санкт Петербург

Вернуться к началу Перейти вниз

как работать с Operator Empty Re: как работать с Operator

Сообщение  justar Сб Окт 04, 2008 7:43 pm

В двух словах - инструкция оператор позволяет переопределить функционал стандартного оператора - заставить его делать нечтто другое. Это аналог перегрузки функции.

justar

Сообщения : 135
Дата регистрации : 2008-05-12
Возраст : 49
Откуда : Кишинёв, Республика Молдоа

Вернуться к началу Перейти вниз

как работать с Operator Empty Re: как работать с Operator

Сообщение  Eric-S Вт Окт 07, 2008 9:20 am

Электрик, обрати внимание на то, что пример описывает "класс" или "пользовательский тип" что в нашем случае одно и тоже.
Где-то на офсайте видел класс для работы с булевыми данными. Там очень ярко и наглядно была показана работа с операторами, и то что она даёт.

А, вот и ссылочка.
Boolean Type by Imortis
Очень оригинальный подход и можно почерпнуть много интересного.

Сам я не работал и подробнее сказать не могу. Раздел в книге нужен, это да.
Если кто разберёться, киньте мне, я его добавлю в главу про процедуры и функции.

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 40
Откуда : Россия, Санкт-Петербург

http://eric50.narod.ru

Вернуться к началу Перейти вниз

как работать с Operator Empty Re: как работать с Operator

Сообщение  electrik Вт Окт 07, 2008 7:20 pm

короче говоря, я так понял, что можно и обойтись без переопределения операторов, покрайней мере пока в моих программах это не является острой необходимостью. да и как-то громоздко все, пока я не смотрел исходники ассемблера, но мне кажется, что в бинарник пехается много не нужного.

electrik

Сообщения : 391
Дата регистрации : 2008-09-02
Возраст : 43
Откуда : галактика Млечный путь, система Солнечная, планета Земля, страна россия, город Санкт Петербург

Вернуться к началу Перейти вниз

Вернуться к началу

- Похожие темы

 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения