История изменений
Исправление
MOPKOBKA,
(текущая версия)
:
Я думал мы про Trait, но ты видимо про dyn &Trait, так вот, смотри как это выглядит в С++, точно так же: https://godbolt.org/z/o3M5KM3aW
test1(PrintableInt{10});
mov QWORD PTR [rsp], OFFSET FLAT:"vtable for PrintableInt"+16
mov DWORD PTR [rsp+8], 10
call "test1(Printable const&)"
В чем отличие от vtable вообще? Точно так же test1 вызовет print из этой таблицы, зная смещение метода.
Исправление
MOPKOBKA,
:
Я думал мы про Trait, но ты видимо про dyn &Trait, так вот, смотри как это выглядит в С++, точно так же: https://godbolt.org/z/o3M5KM3aW
test1(PrintableInt{10});
mov QWORD PTR [rsp], OFFSET FLAT:"vtable for PrintableInt"+16
mov DWORD PTR [rsp+8], 10
call "test1(Printable const&)"
В чем отличие от vtable вообще?
Исправление
MOPKOBKA,
:
Я думал мы про Trait, но ты видимо про dyn &Trait, так вот, смотри как это выглядит в С++, точно так же: https://godbolt.org/z/o3M5KM3aW
mov QWORD PTR [rsp], OFFSET FLAT:"vtable for PrintableInt"+16
mov DWORD PTR [rsp+8], 10
call "test1(Printable const&)"
В чем отличие от vtable вообще?
Исходная версия
MOPKOBKA,
:
Я думал мы про Trait, но ты видимо про dyn &Trait, так вот, смотри как это выглядит в С++, точно так же: https://godbolt.org/z/o3M5KM3aW
В чем отличие от vtable вообще?