что за переменная m.? | |
---|---|
snoop Сообщений: 378 Дата регистрации: 14.11.2002 |
привет всем
дело такое, достался старый код 2.6, сужу правлю его, нашел такое вот обЪявление переменоой m.kodpl=' ' потом идет активное юзание этой переменной, @ 6,3 say 'Код партнера (0-все)- 'get m.kodpl подскажите что за такое похоже на массив или на какой-то указатель |
Re: что за переменная m.? | |
---|---|
piva Сообщений: 18655 Откуда: Курган Дата регистрации: 24.03.2004 |
префикс m. указывает на то что это переменная памяти а не поле активной таблицы
------------------ Часто бывает так, что есть над чем задуматься, а нечем. |
Re: что за переменная m.? | |
---|---|
snoop Сообщений: 378 Дата регистрации: 14.11.2002 |
ну ведь я могу обЪявить и просто переменную хххх=" фыв", не обязательно ведь префикс м. или это как страховка, на всякий пожарный, вдруг будет одноименное поле? мне кажется что это просто старый синтаксис
|
Re: что за переменная m.? | |
---|---|
PaulWist Сообщений: 14618 Дата регистрации: 01.04.2004 |
Цитата: Ну, да некая страховка - при совпадении имени переменной с полем, если не указать префикс, то возмется поле. ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: что за переменная m.? | |
---|---|
vlad Сообщений: 850 Откуда: Запорожье Дата регистрации: 28.09.2000 |
Цитата:будет если пользовать к примеру SCATTER...MEMVAR |
Re: что за переменная m.? | |
---|---|
Glyba Сообщений: 386 Откуда: Собинка Дата регистрации: 23.09.2004 |
Слева от знака = может быть только имя переменной, а не поле, поэтому m. там не нужно - неоднозначности не возникает.
|
Re: что за переменная m.? | |
---|---|
vlad Сообщений: 850 Откуда: Запорожье Дата регистрации: 28.09.2000 |
имелось в виду, что эта команда создает переменные с именем поля и ситуация, когда есть поле и переменная с одинаковым именем, не такая уж редкость (особенно актуально когда дописываешь кусок в чужой код...)
|
Re: что за переменная m.? | |
---|---|
snoop Сообщений: 378 Дата регистрации: 14.11.2002 |
я уверен, что если создавать переменный по правилам именования, то не возникнет ситуации дублирования с именами поелей в таблице
|
Re: что за переменная m.? | |
---|---|
Владимир Максимов Сообщений: 14097 Откуда: Москва Дата регистрации: 02.09.2000 |
|
Re: что за переменная m.? | |
---|---|
IGOR_SMIRNOVSKY Сообщений: 132 Откуда: СПб Дата регистрации: 02.03.2005 |
2 Glyba
В макроподстановке должно стоять имя переменной без m.. ------------------ дураком помру |
Re: что за переменная m.? | |
---|---|
Glyba Сообщений: 386 Откуда: Собинка Дата регистрации: 23.09.2004 |
Цитата:Ну да! Именно потому, что в макроподстановке поля не допускаются, а только переменные. |
Re: что за переменная m.? | |
---|---|
Igor Korolyov Автор Сообщений: 34580 Дата регистрации: 28.05.2002 |
Hi snoop!
Цитата:Это зависит от правил именования. Если применять те что описаны в хелпе (известны как "Венгерская нотация") - то вполне может возникнуть... 'lc___' переменная и 'l___' поле, "реальное" имя которого начинается на 'c' - запросто могут совпадать. Кроме того есть небольшие вариации в производительности - доступ с явным указанием префикса в ряде случаев несколько быстрее чем БЕЗ префикса. Естественно что это относится лишь к тем местам, где ЕСТЬ потенциальная неоднозначность. Слева от знака присвоения 'm.' никогда не требуется - там ВСЕГДА переменная будет. А вот справа от знака присвоения может быть как переменная, так и поле из текущей таблицы. Аналогично и в параметрах передаваемых функциям (за рядом исключений конечно). ------------------ WBR, Igor |
© 2000-2024 Fox Club  |