Страница 2 из 2

Добавлено: 25 янв 2005, 23:35
SL
Смею Вам возразить, господин Romeo.
... ни один язык программирования, даже высокоуровневый, в том числе и С++, не может обращаться к элементам структуры, если он об этой структуре ничего не знает.
Конечно Вы правы, но, мне кажется, следует разделять "знание" о типе переменной и "знание" о самой переменной (метка на область памяти, указатель).
Мне кажется, должен существовать какой-то "нормальный" способ доступа с членам объекта структуры зная только ее тип (то есть имея доступ к ее объявлению) и адрес объекта.
Область видимости я упомянул в качестве примера, возможно неудачно (кстати, почему?). На самом деле проблема возникла из-за жгучего желания разместить объект структуры в стеке, а не в сегменте данных (что бы позволило иметь метку), и передавать ее адрес в другие процедуры.
Использование включаемых файлов не решает проблему, поскольку я не могу скомпилировать даже 1 файл, где и так есть объявление структуры.
Надеюсь смог наконец объяснить сущность проблемы. :)
Если я в чем-то не прав, покорнейше прошу объяснить. Возможно есть какие-то другие пути решения, я их пока в упор не вижу.

С наилучшими пожеланиями, SL.

Добавлено: 25 янв 2005, 23:39
SL
2Andy: именно этим способом я сейчас и пользуюсь, но мне он ужасно не нравится, особенно в свете того, что в скором планируется изменить размер членов.

Добавлено: 26 янв 2005, 11:47
Romeo
Господин SL, предлагаю пользовать и дальше тем способом, который предложил глубокоуважаемый Andy. Почему? Да потому, что именно в такой (с точностью до переобозначений) код превращает С-компилятор обращения к членам С-структур. Что может быть более показательным? :)

Добавлено: 26 янв 2005, 18:51
SL
Глубокоуважаемый господин Romeo, предложение принимаю. :)
Но как только найду более приемлимый способ, обещаю уведомить о нем, дабы в будущем никто не утруждал себя больше утомительным поиском таких мелочей.

В любом случае, спасибо вам, Romeo и Andy, за участие.