Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Теоретический вопрос / 10 сообщений из 10, страница 1 из 1
13.10.2006, 12:03
    #34053115
galileo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Теоретический вопрос
Неужели в PowerBuilder-е отсутствует возможность одновременного присвоения значение нескольким переменным?
Существуют 2 DataWindow dw_1, dw_2
В событии dragdrop DataWindow dw_1 следующий код

dw_2.Object.join_id = This.Object.join_id[row] = 1

выдает ошибку "Type mismatch accessing external property join_id ..."

Поэтому приходится писать в 2 строки:
dw_2.Object.join_id = 1
This.Object.join_id[row] = 1

Может я что-то не так делаю?
...
Рейтинг: 0 / 0
13.10.2006, 12:07
    #34053142
galileo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Теоретический вопрос
Извиняюсь за опечатку, конечно:
dw_2.Object.join_id [row] = This.Object.join_id[row] = 1
...
Рейтинг: 0 / 0
13.10.2006, 12:16
    #34053184
ЗоринАндрей
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Теоретический вопрос
galileoИзвиняюсь за опечатку, конечно:
dw_2.Object.join_id [row] = This.Object.join_id[row] = 1
потому что справа от первого [=] получается boolean

Код: plaintext
1.
2.
boolean a
int b= 0 ,c= 1 
a = b = c
b=c -> False -> a=False

а когда присваивания в две строки - читается и понимается легче.

можете в одну строку два оператора написать через [;]
...
Рейтинг: 0 / 0
13.10.2006, 14:41
    #34053861
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Теоретический вопрос
galileoНеужели в PowerBuilder-е отсутствует возможность одновременного присвоения значение нескольким переменным?

dw_2.Object.join_id = This.Object.join_id[row] = 1

выдает ошибку "Type mismatch accessing external property join_id ..."

А еще в PB циклы нужно писать так:
Код: plaintext
1.
2.
3.
int i
FOR i =  1  TO  5  
...
NEXT
а мне хотелось бы:
Код: plaintext
1.
2.
for (int i =  1 ; i <=  5 ; i ++) {
...
}

И у массивов начальный индекс 1, а не 0, как хотелось бы.

:))
...
Рейтинг: 0 / 0
16.10.2006, 09:38
    #34056187
spas2001
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Теоретический вопрос
Вот бяда, прямо-таки огорчение
Жаль, что PB это Pb, а, не скажем, VB (или С++, или Perl, или ...)
Нужное подчеркнуть
...
Рейтинг: 0 / 0
16.10.2006, 11:34
    #34056532
galileo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Теоретический вопрос
Anatoly Moskovsky
А еще в PB циклы нужно писать так:

int i
FOR i = 1 TO 5
...
NEXT

а мне хотелось бы:

for (int i = 1; i <= 5; i ++) {
...
}


И у массивов начальный индекс 1, а не 0, как хотелось бы.

Ну это мы переживем. Синтаксис особой роли не играет... Хотя я всегда был приверженцем фигурных скобок для определения блока операторов, нежели рахных next, end if и т.д.

spas2001
Вот бяда, прямо-таки огорчение
Жаль, что PB это Pb, а, не скажем, VB (или С++, или Perl, или ...)
Нужное подчеркнуть


Дело не в этом. Назовите мне еще языки в которых конструкция a = b = с = 10
не будет работать так, как нас учили еще в школе? Че вообще за выпендреж у Sybase? Решили придумать свою идеологию программирования? Лучше б глюки исправляли вовремя :)
...
Рейтинг: 0 / 0
16.10.2006, 12:06
    #34056643
Dim2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Теоретический вопрос
galileo wrote:

> Ну это мы переживем. Синтаксис особой роли не играет... Хотя я всегда
> был приверженцем фигурных скобок для определения блока операторов

Ну так пиши на С.

> Дело не в этом. Назовите мне еще языки в которых конструкция a = b = с = 10
> не будет работать так, как нас учили еще в школе?

С точки зрения того, чему меня учили в школе, эта конструкция не имеет
смысла.

> Че вообще за выпендреж у Sybase?

Да вот у тебя, понимаешь ли, забыли спросить .
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
16.10.2006, 13:45
    #34057097
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Теоретический вопрос
galileoДело не в этом. Назовите мне еще языки в которых конструкция a = b = с = 10
не будет работать так, как нас учили еще в школе? Че вообще за выпендреж у Sybase?
Я знаю два языка, где символ "=" это и оператор присвоения и оператор сравнения. Это Basic и PowerBuilder. Конструкция вида a = b = с = 10 в таких языках является неоднозначной. В PB она запрещена, а в Basic неоднозначность разрешается в сторону сравнения (и с этим я согласен).
Если Вы знаете другие языки, где a = b = с это два присвоения, то скажите нам про них.
Решили придумать свою идеологию программирования? Лучше б глюки исправляли вовремя :)
Синтаксис операции присвоения к идеологии программирования никакого отношения не имеет.
...
Рейтинг: 0 / 0
16.10.2006, 14:31
    #34057293
galileo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Теоретический вопрос
to Dim2000. Если бы выбор был за мной программировал бы на С.
to Anatoly Moskovsky. Есть куча языков как компилируемых так и интерпретируемых где a=b=c=? работает подобно С. Pascal тоже поддерживает эту возможность, только оператор присваивания не так обозначается...
По большому счету смысла в дальнейшем споре нет. Это мой последний пост на данную тему. Спасибо за аргументированные ответы.
...
Рейтинг: 0 / 0
16.10.2006, 15:09
    #34057402
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Теоретический вопрос
galileoЕсть куча языков как компилируемых так и интерпретируемых где a=b=c=? работает подобно С. Pascal тоже поддерживает эту возможность, только оператор присваивания не так обозначается...
Так в том и суть, что при разных символах операций сравнения и присвоения никаких проблем нет.
Но желание сделать эти два оператора используя символ '=' вполне объяснимо: это стандартная математическая запись и она интуитивно применяется новичками в программировании.

Ваше раздражение понятно - Вы пытаетесь на PB возложить те же требования, что и к языкам с которыми привыкли работать.
Но многие вещи в PB делаются одним оператором встроенным в язык, иногда получается коряво, иногда глючит (при этом всегда есть обход глюка), но уже готовое, не надо кодировать. Так что неудобства, вызванные невозможностью записать два присвоения одной командой, выглядят немного смешно.

Поэтому с ним надо расслабиться и получить удовольствие. :)
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Теоретический вопрос / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]