|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
01.11.2009, 15:23 | #1 |
Пользователь
Регистрация: 31.10.2009
Сообщений: 10
|
Передача поля объекта в процедуру в качестве параметра
Определение класа Class1:
Код:
Код:
Последний раз редактировалось Голованов Д.; 01.11.2009 в 17:03. Причина: Ошибка |
01.11.2009, 17:31 | #2 |
Старожил
Регистрация: 02.05.2009
Сообщений: 3,907
|
Смысла такого кода я не понял,но посмотрите варианты,может помогут
Анализ,обработка данных Недорого
|
01.11.2009, 17:50 | #3 |
Пользователь
Регистрация: 31.10.2009
Сообщений: 10
|
Спасибо за ответ, но неподойдёт. Смысл делать такой код есть, уж поверьте мне )
Попробую описать словами. Есть процедура, которая меняет значение передаваемой ей переменной. Есть объект, поле которого хотелось бы поменять с помощью этой функции. При этом делать функцию частью объекта (методом или свойством) в этом конкретном случае мне видится нелогичным. Так что повторю вопрос: как передать поле объекта в функцию в качестве изменяемого параметра? Последний раз редактировалось Голованов Д.; 01.11.2009 в 17:52. Причина: Афтар тупит |
01.11.2009, 19:28 | #4 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
Вы всё слишком усложняете. Решение Вам уже подсказали. Если интересует что-то другое - подробно сформулируйте задачу. |
|
01.11.2009, 20:05 | #5 |
Пользователь
Регистрация: 31.10.2009
Сообщений: 10
|
EducatedFool
Мой предыдущий вопрос с этим связан только косвенно. Хотя думаю, попробуй я передать поле визуального объекта в процедуру - результат был бы тот же. Про смысл. Почему вы считаете, что его нет? В действительност есть уже написанный класс (400 строк, а не одна, как в выше приведённом примере). И есть процедура вне класса, в которую мне сильно-сильно хочется отправитью на изменение одно из полей этого класса, доступное для записи. И я недоумеваю, почему отправляя его таким образом, как в примере, я не могу его изменить. Что же мне по-вашему делать? PS: Не устаю повторять предельно конкретный вопрос: как передать поле объекта в функцию в качестве изменяемого параметра? |
01.11.2009, 20:32 | #6 |
Пользователь
Регистрация: 31.10.2009
Сообщений: 10
|
Вот такое на паскале запросто проходит:
Код:
|
02.11.2009, 04:09 | #7 |
Балуюсь кодами
Участник клуба
Регистрация: 09.01.2009
Сообщений: 1,837
|
Да, такая штука не пройдет. Можно передать объекты по ссылке, но не элементы класса.
А почему бы не записать эту процедуру внутри класса?
Лучше день потерять — потом за пять минут долететь!©
|
02.11.2009, 05:30 | #8 |
Пользователь
Регистрация: 31.10.2009
Сообщений: 10
|
Ну... ето может чисто моя заморочка, но. В процедуре происходит проверка входных данных на корректность и некоторая их модификация. Т.е. процедура зависит от способа ввода данных. Но! Сегодня я хочу вводить их в форму, завтра - в яцейки таблицы. Сегодня в одном формате и с одними размерностями, завтра - в другом и с другими. Класс же по-моему (именно этот конкретный класс) не должен от этого зависеть. Типа, Юпитеру - юпитерово )
PS: Наверное введу доп. переменную, буду её отправлять в процедуру, потом присваивать полю объекта... Тянемся правой ного к левому уху ) |
02.11.2009, 10:38 | #9 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Вот так будет работать:
Код:
Код:
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
Макросы любой сложности на заказ. Мониторинг цен конкурентов Последний раз редактировалось EducatedFool; 02.11.2009 в 10:42. |
02.11.2009, 16:12 | #10 |
Пользователь
Регистрация: 31.10.2009
Сообщений: 10
|
EducatedFool, спасибо за ответы.
Первый вариан не подходит, ибо с помощью функции заполняются разные поля: Код:
Код:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
TextBox в качестве параметра функции/процедуры | Голованов Д. | Microsoft Office Excel | 6 | 01.12.2009 10:38 |
Массив в качестве параметра | DeKot | Общие вопросы Delphi | 6 | 15.10.2009 22:32 |
Пользовательская функция с диапазоном в качестве параметра | SanSanblch | Microsoft Office Excel | 2 | 29.05.2009 17:37 |
Функции. Передача массива в качестве параметра функции. | Wia | Помощь студентам | 2 | 17.03.2009 14:57 |
Передача метода класса в качестве параметра в другой метод | Dmytry87 | Общие вопросы C/C++ | 0 | 12.11.2008 15:28 |