![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Syned |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 7.7.2005 Репутация: нет Всего: 1 |
Есть допустим функция поиска подстроки в строке. Мне нужно чтобы эта функция возвращала одновременно позицию и размер найденого текста (не буду объяснять зачем размер текста), но суть в том что вернуть нужно два или более значений. Возможно ли такое?
--------------------
Поссы в сугроб почувствуй себя лазером! |
|||
|
||||
| Chrisstoff |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 28.5.2005 Где: Hell... жудкое ме сто Репутация: нет Всего: 1 |
ну типа так ...
|
|||
|
||||
| Syned |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 7.7.2005 Репутация: нет Всего: 1 |
Chrisstoff, это не то, у тебя возвращает один integer а надо например два...
--------------------
Поссы в сугроб почувствуй себя лазером! |
|||
|
||||
| Chrisstoff |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 28.5.2005 Где: Hell... жудкое ме сто Репутация: нет Всего: 1 |
Это как раз самое то ...
вот те живой пример если так не понятно...
как видишь функции передаётся имя переменной в которую будет возвращено значение ... |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 15 Всего: 98 |
функция может _вернуть_ только один параметр ( зачем может понадобится несколько -- не понимаю ), но если оччччень хочеться -- можно возвращать структуру...
-------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| Bes |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 806 Регистрация: 8.12.2004 Репутация: 5 Всего: 7 |
Все правильно - функция возвращает один параметр, но часто быват удобнее а иногда просто необходимо чтобы функция возвращала нечто, что невозможно описать только одним параметром. Тогда если процедура является частью некоторой концепции то да - правильнее будет описать структуру однако если функция имеет частный характер и подобная структура больше нигде не используется то не нужно заморачиваться и проще передать пару варовских параметров.
Мое мнение. |
|||
|
||||
| Vit |
|
||||||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 48 Всего: 207 |
Вариант первый:
Вариант второй:
-------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
||||||
|
|||||||
| Bes |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 806 Регистрация: 8.12.2004 Репутация: 5 Всего: 7 |
2Vit:
Я конечно не Ален Д'Лон но помоему если в вашем коде не поставить перед переменными Var то работать не будет т.к. параметры просто скопируются а не передадутся ссылки на них. или что это там за OUT? |
|||
|
||||
| vadims |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 8.6.2005 Репутация: нет Всего: 17 |
Syned
Может быть я просто еще не проснулся и не въезжаю в суть проблемы, но на первый взгляд - функция по сути своей может вернуть только 1 параметр - а вот процедура в паскале может иметь хоть 1000 выходных переменных Вообщем имхо проблема совсем надуманнная -------------------- Cpu not found ! Press any key for software emulation. |
|||
|
||||
| Chrisstoff |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 28.5.2005 Где: Hell... жудкое ме сто Репутация: нет Всего: 1 |
... так же как и процедура функция без проблем возвращает эти же самые переменные ... проблему раздули из ничего чес слово ... написал var тебе значение и вернулось ... почему у фсех сложилось мнение что процедура возвращает дофига чего а функция тока одно значение ... это что пишут в литературе ... какой?? |
|||
|
||||
| vadims |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 8.6.2005 Репутация: нет Всего: 17 |
Chrisstoff
Суть процедуры - что то делаем и мб что-то возвращаем - если не в падло Имхо -------------------- Cpu not found ! Press any key for software emulation. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |