[c++] технологии Runtime classes и Smart Pointers
![](/images/graemlins/confused.gif)
![](/images/graemlins/smile.gif)
В общем, runtime class - это программная эмуляция RTTI в MFC. А smart pointer - указатель с подсчётом ссылок. Я бы сказал, что отличий между ними нет. Как нет и ничего общего. Прежде чем задавать такие вопросы, стоит хотя бы 5 минут почитать документацию.
Зачем такое надо? Чем не устраивает встроенный в компилятор RTTI?
![](/images/graemlins/smile.gif)
Просто интересно - я правильно понимаю, что в мфц это сделано через виндовую технологию подмены WndProc? Тогда это не то чтобы хак, это использование некоей достаточно мощной технологии для реализации совершенно левой вещи =)
Причём тут оконная процедура и простые классы? Оконная процедура есть только у окон, и меняется с помощью установки window long.
А в чём тогда там хак?
У меня почему-то эти технологии с Java больше ассоциировались, а тут по C++ спросили.
P.S. Название темы исправил. Никаких отличий не надо
Если с жавой - тогда рантайм классы это классы создаваемые (тададам!) в рантайме, то есть во время исполнения, а смарт-пойнтеры - это пойнтеры, которые всегда указывают куда надо (то есть объект не может быть удалён, пока на него указывает хотя бы один указатель, а при перемещении объекта в памяти (сборщиком мусора) указатели начинают указывать туда, куда надо). Вообще их правильней ссылками называть. И в жаве все указатели такие (разве что если там есть возможность специальным образом писать unmanaged код)!
Оставить комментарий
Yulka-MOl
объясните на пальцах плз, что за зверь