реклама на сайте
подробности

 
 
> Положение поля в классе
Ivan.
сообщение Oct 9 2008, 05:48
Сообщение #1





Группа: Участник
Сообщений: 7
Регистрация: 13-02-07
Пользователь №: 25 325



Как получить Offset поля в классе?
Впринципе это вопрос общего назначения, но для уточнения, я пишу под WinAVR.
При применении ассемблерных вставок в C++ для работы со структурами появляется необходимость взятия переменной относительно какого-то объекта (указателя), например:
LDD R0, Y+OFFSET(T::i)
Написал define:
#define OFFSETT(Type, Item) ((int)(&((Type *)0)->Item))
Что впринципе и возврящает необходимую константу. В С++ такой прикол проканывает, в асме старого компилятора тоже, а в новом начинает через один ворчать, мол не константа это.
Подскажите, может есть какие нибудь иные способы решения?


--------------------
Я могу ВСЁ, вопрос, сколько времени у меня это займет.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 05:49
Рейтинг@Mail.ru


Страница сгенерированна за 0.01363 секунд с 7
ELECTRONIX ©2004-2016