Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Отличие функций с $ и без / 25 сообщений из 47, страница 1 из 2
06.05.2004, 11:39
    #32508731
neue
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
1.В чем принципиальное отличие в имени функции с $ и без?
Например: Chr$(34) и Chr(34)
Left$(Text, Tmp) и Left(Text, Tmp)

2. Первый символ в тексте имеет позицию 0 или 1?
...
Рейтинг: 0 / 0
06.05.2004, 11:46
    #32508743
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
1. Функции с $ сохранены только для совместимости с предыдущими версиями. Сегодня они не рекомендуются к использованию.

2. Первый символ - 1.
...
Рейтинг: 0 / 0
06.05.2004, 11:47
    #32508746
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
Саныч, не гони
Функции с $ - возвращают значение типа String
Функции без $ - возвращают значение типа Variant, которое затем приводится к string'у
Ну и, собственно, разница между ними - выполняется преобразование типа или нет.
...
Рейтинг: 0 / 0
06.05.2004, 11:50
    #32508751
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
Вернее так:
Функции без $ - возвращают значение типа Variant /String (как оно видится в окне отладки)
...
Рейтинг: 0 / 0
06.05.2004, 12:01
    #32508779
Kelme
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
и ссылаясь на нашего любимого Гетца, ф-ии с $ работают быстрее ;)
...
Рейтинг: 0 / 0
06.05.2004, 12:02
    #32508782
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
Одно другому не противоречит.
...
Рейтинг: 0 / 0
06.05.2004, 12:28
    #32508867
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
авторОдно другому не противоречит.

Саныч, может и не противоречит, но комментария, мне кажется, требует.

комментарий
функции без $ кроме того, что возвращают Variant, еще и на вход принимают Variant. Тем самым оказываясь способными обрабатывать входящие Null-значения. Что есть полезно при работе с контролами форм.
...
Рейтинг: 0 / 0
06.05.2004, 13:30
    #32509024
Neue
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
авторФункции без $ - возвращают значение типа Variant, которое затем приводится к string'у

Если все это происходит автоматически, то:
- зачем это нужно
- как это поимать (преобразование из Variant в String)?
...
Рейтинг: 0 / 0
06.05.2004, 13:34
    #32509041
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
Если честно, я не очень понимаю, в чем разница. Даже если функция или переменная типа Variant возвращает значение типа String, то она все равно возвращает значение типа String.
...
Рейтинг: 0 / 0
06.05.2004, 13:36
    #32509053
Темный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
Вопрсо скоро сведется к следующему: зачем нужен тип Variant
...
Рейтинг: 0 / 0
06.05.2004, 13:37
    #32509055
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
Variant нужен, чтобы возвращать то стринги, то наллы, то лапти. Сова, ты меня не путай.
...
Рейтинг: 0 / 0
06.05.2004, 14:01
    #32509116
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
2 Саныч
Даже если функция или переменная типа Variant возвращает значение типа String, то она все равно возвращает значение типа String.
Ты не прав. Вариант - это не стринг.
А учитывая замечание Виктоши - ты не прав вдвойне.
Попробуй-ка такое выполнить
Код: plaintext
1.
Dim s As String
s = Left(Null,  1 )
и такое
Код: plaintext
1.
Dim v As Variant
v = Left(Null,  1 )
...
Рейтинг: 0 / 0
06.05.2004, 14:16
    #32509162
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
Лох, я говорю про Фому, а ты про Ерему. Я про случай, когда она возвращает String, а ты про случай, когда она возвращает Null.
...
Рейтинг: 0 / 0
06.05.2004, 14:32
    #32509204
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
Саныч, как ты там говоришь? "Variant нужен, чтобы возвращать то стринги, то наллы, то лапти"? "переменная типа Variant возвращает значение типа String"?
Не бывает Variant'а, возвращающего String
Бывает Variant, содержащий String
Помимо отличающихся наборов допустимых значений разница между String'ом и Variant'ом - в приведении типов. Стало быть во временных затратах (хоть это и пофигу имхо). А так же в дополнительном объеме памяти на хранение структуры Variant'а (хоть это тоже пофигу имхо).

Лох, я говорю про Фому, а ты про Ерему. Я про случай, когда она возвращает String, а ты про случай, когда она возвращает Null.
Случай когда получает String и возвращает String - это Left$
Случай когда получает Variant (стринг или нул) и возвращает Variant (стринг или нул) - это Left
Кого из них ты каким именем назвал?
...
Рейтинг: 0 / 0
06.05.2004, 14:52
    #32509245
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
ЛохНе бывает Variant'а, возвращающего String
Бывает Variant, содержащий String
Возвращающий - это на случай функции.
Function XXX(...) As Variant - функция типа Variant, которая в частном случае может вернуть String.
Содержащий - это на случай переменной.
Dim XXX As Variant - переменная типа Variant, которая в частном случае может содержать String.

Лохи возвращает Variant (стринг или нул)
Нельзя возвращать Variant. Нет такого типа значения. Есть такой тип переменных и функций.

Другое дело, что если значение типа String возвращено функцией типа Variant, то требуются затраты на распознавание текущего типа значения этой функции.
...
Рейтинг: 0 / 0
06.05.2004, 14:53
    #32509248
(c)VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
"Платон мне друг но истина дороже" :)
Саныч ,ЛП прав ,а ты нет .B большинстве случаев ,действительно "это пофигу" (Л.П.) ,но если делать обработку в цикле из десятков тысяч итераций ?
...
Рейтинг: 0 / 0
06.05.2004, 14:54
    #32509252
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
В чем именно я не прав? Я согласился, что требуются затраты.
...
Рейтинг: 0 / 0
06.05.2004, 14:58
    #32509263
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
2 (c)VIG

если делать длинный цикл - разницу заметишь при УСЛОВИИ, что код это - native копилированный VB-проект

Готов утверждать, что во всех остальных случаях ( в частности под Акцесс-ом) надежно измеримой разницы не будет НИ ПРИ КАКОЙ длине цикла

Victosha
...
Рейтинг: 0 / 0
06.05.2004, 14:58
    #32509264
(c)VIG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
Так я писал до того как ты согласился
...
Рейтинг: 0 / 0
06.05.2004, 15:00
    #32509269
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
ААААААААААААААаааааааааааааааааааааааа

авторFunction XXX(...) As Variant - функция типа Variant, которая в частном случае может вернуть String.
АААААААААААААААааааааааааааааа
В частном случае она может вернуть Variant, содержащий String!!!

авторНельзя возвращать Variant.
Можно

авторНет такого типа значения.
Есть

авторЕсть такой тип переменных
Есть

автори функций
Нет.
Нет такого - тип функции. Есть тип возвращаемого значения (тип переменной в стеке).
...
Рейтинг: 0 / 0
06.05.2004, 15:05
    #32509278
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
2 Лох:

ББББББББББББББББББББББББББббббббббббббббббббббббб

Что такое Variant, содержащий String? Variant - это структура, у которой значение одно поле, а тип значения другое?
...
Рейтинг: 0 / 0
06.05.2004, 15:11
    #32509291
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
2 Саныч

авторVariant - это структура, у которой значение одно поле, а тип значения другое?
абсолютно точно - именно так и есть
...
Рейтинг: 0 / 0
06.05.2004, 15:14
    #32509298
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
Понял, благодарен.
...
Рейтинг: 0 / 0
06.05.2004, 15:14
    #32509299
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
(неграмошный по части ссылок я )

/topic/87645&pg=4

там пост 644036

Код: plaintext
модерирую:\n///topic/ 87645 &pg= 4 # 644036 \nСаныч\n\nТо есть:
/topic/87645&pg=4#644036
...
Рейтинг: 0 / 0
06.05.2004, 15:18
    #32509306
Лох Позорный
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отличие функций с $ и без
2 Victosha
Чтобы получить такую ссылку:
/topic/87645&pg=4#644036
надо написать
// /topic/87645&pg=4#644036
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Отличие функций с $ и без / 25 сообщений из 47, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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