Войти

Показать полную графическую версию : Несколько вопросов по C++


pva
08-04-2004, 11:07
1. Когда виртуальные функции раскрываются подстановками (Release)? на опыте заметил, что в классе, живущем не дольше своего блока {...}. Есть стандарты?

2. Что такое указатель на динамический (обычный) метод? почему это не адрес кода метода?

3. Можно ли как-нибудь легально сделать две виртуальные функции (определения совпадают) одной реализацией?

4. Как по правилам реализуется передача параметра
struct B {...}
A::method(B b)

Конечно, же меня интересует архитектура IA-32

hasherfrog
08-04-2004, 12:35
Хммм. Тест на профпригодность :)
2) ...указатели на члены классов реализуются как структуры, содержащие относительную позицию в объектах и индекс в таблице виртуальных функций. Т.о. за значением указателя на член класса не обязательно стоит машинный адрес.
3) ИМХО, нет.
Не понимаю только, что Вы имеете в виде под словом Release? Есть реализация - implementation, еще есть релиз - итог, а у Вас что?

hasherfrog
09-04-2004, 08:45
1) По -режнему не могу понять вопросю
4) Внутрь :) А::method передается адрес b.




© OSzone.net 2001-2012