Вопросы по теме 'vtable'

С++ d3d перехват — COM vtable
Пытаюсь сделать программу типа Fraps. Смотрите комментарий, где это не удается. #include "precompiled.h" typedef IDirect3D9* (STDMETHODCALLTYPE* Direct3DCreate9_t)(UINT SDKVersion); Direct3DCreate9_t RealDirect3DCreate9 = NULL; typedef HRESULT...
3596 просмотров
schedule 12.07.2023

Где находится чистая виртуальная функция в C++?
В какой виртуальной таблице будет находиться чистая виртуальная функция? В базовом классе или производном классе? Например, как выглядит виртуальная таблица в каждом классе? class Base { virtual void f() =0; virtual void g(); } class...
3124 просмотров
schedule 25.05.2022

Что такое vtable в C++
Возможный дубликат: зачем мне нужна виртуальная таблица ? Что такое виртуальная таблица в C++? Пока я знаю, что vtable — это виртуальная таблица с массивом указателей на виртуальные функции. Есть ли статья, которую я могу прочитать с...
31820 просмотров
schedule 04.10.2022

Могу ли я получить указатели на функции для подключения из диспетчерского интерфейса COM? (не двойной интерфейс)
Могу я спросить кое-что о методе подключения в интерфейсе COM Distach? Недавно я делаю какую-то утилиту, которая является своего рода инструментом для мониторинга COM. и я пытаюсь перехватить интерфейс объекта Com во время работы. для этого...
951 просмотров
schedule 14.04.2022

C ++ Interview: vtable для класса с чистой виртуальной функцией
Мне задали этот вопрос на интервью сегодня !! (это было действительно неудобное телефонное интервью ..): В чем разница между vtable для класса с виртуальными функциями и класса с чистыми виртуальными функциями? Теперь я знаю, что в...
8578 просмотров
schedule 12.05.2022

Неопределенная ссылка на «vtable для xxx»
takeaway.o: In function `takeaway': project:145: undefined reference to `vtable for takeaway' project:145: undefined reference to `vtable for takeaway' takeaway.o: In function `~takeaway': project:151: undefined reference to `vtable for takeaway'...
120446 просмотров
schedule 09.12.2022

Может ли существовать пустая виртуальная таблица?
#include <iostream> using namespace std; class Z { public: int a; virtual void x () {} }; class Y : public Z { public: int a; }; int main() { cout << "\nZ: " << sizeof (Z); cout << "\nY: " <<...
626 просмотров
schedule 04.07.2022

XNA 3.1 Сохранение буфера глубины до его очистки
Я пытаюсь обойти автоматическую очистку XNA 3.1 буфера глубины при переключении целей рендеринга путем копирования IDirect3DSurface9 из буфера глубины до переключения целей рендеринга, а затем восстановить буфер глубины позже. В коде метод...
552 просмотров
schedule 27.01.2023

У каждого класса есть таблица виртуальных функций в С++?
У каждого класса есть таблица виртуальных функций в С++? Я знаю, что виртуальная таблица предназначена для полиморфизма. Класс с виртуальными функциями должен иметь v-таблицу. Но как насчет того, чтобы у класса не было виртуальной функции? Или...
3314 просмотров
schedule 03.05.2024

Оптимизация вызова виртуальной функции
У меня вопрос по оптимизации вызовов виртуальных функций. Я где-то читал (и проблема в том, что сейчас не могу найти статью), что можно было бы оптимизировать поиск в v-таблице, используя конструкцию, подобную этой: // Base.h class Base {...
1193 просмотров

Виртуальная таблица С++
Возможный дубликат: Проходит ли вызов виртуальной функции C++ для производного объекта через vtable? У меня есть вопрос относительно виртуальной таблицы С++, особенно для gcc. рассмотрите следующий код class A{ public: virtual void...
90 просмотров
schedule 18.01.2023

Виртуальная таблица в llvm (llvm-py)
Я использую llvm-py для создания компилятора DIY для некоторых искусственных, и мне нужна таблица виртуальных методов в области земного шара. Моя концепция состоит в том, чтобы иметь несколько массивов указателей на функции (по одному для каждого...
769 просмотров

С++: специализация класса - допустимое преобразование для соответствующего компилятора?
Надеюсь, это не слишком специализированный вопрос для StackOverflow: если он существует и может быть перенесен в другое место, дайте мне знать... Много лун назад я написал дипломную работу, в которой предлагал различные методы девиртуализации для...
386 просмотров

Неопределенные ссылочные ошибки в приложении Qt
У меня есть библиотека и пример приложения, управляемые CMake. Итак, есть класс, который я использую в библиотеке: sourceeditor.h #ifndef SOURCEEDITOR_H #define SOURCEEDITOR_H #include <QWidget> #include "novile_export.h" namespace...
1049 просмотров
schedule 08.06.2023

замена fvtable-gc в GCC
Есть ли замена параметрам fvtable-gc в GCCv4.7.1 (поддерживалась в GCCv3.x)? Я хочу удалить неиспользуемые виртуальные функции в процессе компоновки. fvtable-gc Выдавать специальные перемещения для виртуальных таблиц и ссылок на виртуальные...
1306 просмотров

Диспетчеризация динамических методов в C
Я знаю, что это звучит глупо, и я знаю, что C не является объектно-ориентированным языком. Но можно ли как-нибудь реализовать динамическую диспетчеризацию методов в C? Я думал об указателях на функции, но не понял всей идеи. Как я мог...
6287 просмотров
schedule 09.05.2022

Каково это значение в выводе vtable из Clang?
Рассмотрим следующий код: class base { public: base() = default; virtual int foo() { return 0; } }; class derived : public base { public: derived() = default; virtual int foo() { return 1;} }; Скомпилировав это с помощью Clang...
54 просмотров
schedule 04.03.2023

Неопределенные символы для архитектуры x86_64 vtable
Я пытаюсь сделать проект в Netbeans C++ для Mac, когда я создаю простой конструктор для класса с именем servicio , компилятор показывает мне следующую ошибку: "/Applications/Xcode.app/Contents/Developer/usr/bin/make" -f...
10095 просмотров
schedule 10.06.2022

Отличается ли расположение виртуального указателя в объекте, если объект имеет полиморфизм, по сравнению с множественным наследованием?
Я пытаюсь понять размещение виртуального указателя внутри объекта и хотел бы получить некоторые пояснения. Я рассмотрел два разных сценария: полиморфизм и множественное наследование. У обоих разные ответы на вопрос, где находится виртуальный...
141 просмотров

Как одна виртуальная таблица отслеживает новые виртуальные функции?
Я использую VS 2013 и пытаюсь увидеть, как vptr и vftable работают на уровне объекта. Итак, у меня есть следующие классы: #include<iostream> using namespace std; class baseClass { public: void nonVirtualFunc() {} virtual void...
259 просмотров