Согласно этому, void * не имеет информации RTTI, поэтому приведение из void * не является законным и имеет смысл. Если я правильно помню, dynamic_cast от void * работал над gcc. Не могли бы вы ...
Я хотел бы использовать RTTI для проверки типов, содержащихся в исходных файлах проекта, во время разработки, а не во время выполнения. Насколько мне известно, это не поддерживается, но обсуждение в ...
Мы можем использовать SuperObject библиотека для вызова методов определенного объекта по его имени и передачи его параметров в виде строки json с использованием метода SOInvoker, как в этом ответе. Я хотел бы знать, как это сделать ...
Согласно cplusplus.com, функция std :: type_info :: before () ... Возвращает истину, если тип предшествует типу rhs в порядке сортировки. Порядок сортировки - это просто внутренний порядок, который поддерживается ...
У меня есть несколько глобальных строковых переменных. Мне нужно создать функцию, которую я мог бы передать и сохранить в какой-то структуре.
Позже мне нужно будет их перечислить и проверить их значения. как это может быть легко ...
Почему я запускаю этот main.cpp: #include
#include с использованием пространства имен std; struct Blah {}; int main () {cout << typeid (Blah) .name () << endl; return ...
Вся эта штука с дженериками как бы заставляет меня зацикливаться, и более того, RTT. Специфика? А вот и суть: enum QueryHelper {query1, query2; static QueryHelper ...
Я собираю встроенные возможности скрипта, используя отличный Pascal DWScript. Я также добавил в DWScript собственное определение класса на стороне Delphi (TDemo), используя: dwsUnit.ExposeRTTI( TDemo....).
В C ++, когда мы используем typeid для получения имени типа объекта или класса, будет отображаться декорированная (искаженная) строка. Я использую cxxabi, чтобы разобрать его: #include
# include ...
У меня довольно простой вопрос по поводу оператора dynamic_cast. Я знаю, что это используется для идентификации типа во время выполнения, то есть, чтобы узнать о типе объекта во время выполнения. Но из твоего программирования ...
В настоящее время я использую этот код, но ничего не перечисляю. Что мне не хватает? программа ListAttrs; {$ APPTYPE CONSOLE} использует Rtti, SysUtils; тип TPerson = class private FName: String; ...
Используя Delphi 2010 и RTTI, я знаю, как получить тип класса объекта и как получить/установить значение и тип свойств объекта, но как определить, какой класс в цепочке наследования...
Я пытаюсь обнаружить наиболее производный класс объекта в конструкторе одного из классов в его дереве наследования. Я потратил на это несколько часов и не знаю, как еще я могу ...
Где-то в Интернете я нашел простое решение для класса идентификации без встроенного -в C++ RTTI. шаблон <имя типа T> Идентификация класса { public :static int64 _t id (){...
Я пытаюсь написать класс, наследуемый от FMX TStyledControl. Когда стиль обновляется, он загружает объекты ресурса стиля в кеш. Я создал проектную группу для пакета с пользовательскими элементами управления и протестировал FMX...
Я сохранил указатель на объект type_info. int MyVariable = 123;
const std :: type_info * Datatype = & typeid (MyVariable); Как я могу использовать это для приведения типа другой переменной к этому типу? Я пробовал ...
Я помню кодирование на платформах, на которых отключены и RTTI, и исключения, и на других, на которых они оба включены. Однако я не могу припомнить кодирование на платформе, которая включала бы одно и отключало...
У меня есть класс в моем приложении Delphi, где мне нужен простой и динамичный способ сброса всех строковых свойств на '' и все логические свойства в False
Насколько я вижу в Интернете, он должен...
Я написал язык сценариев для своих приложений, и моя цель — сделать возможным публикацию любого типа из Delphi в сценарии. Я использую rtti для автоматизации этой задачи. Для любого типа экземпляра, такого как классы, я...
Я создаю экземпляр класса с помощью функции TRttiMethod.Invoke, но когда конструктор или метод перегружен, rtti не вызывает нужный метод. Я написал пример приложения для...
Похоже, что в TValue отсутствует один, на мой взгляд, обязательный метод; TValue.Equals(TValue). Итак, какой быстрый и приличный способ сравнить 2 TValues, желательно без использования TValue.ToString()...
Кто-нибудь знает о потомке TDataset, который работает с Generics и RTTI, чтобы я мог писать такой код и использовать компоненты с поддержкой данных в графическом интерфейсе? : ...
ds:TDataset;
......
у меня есть этот класс: {$RTTI EXPLICIT FIELDS([vcProtected]) PROPERTIES([vcProtected])}
const PP_VEHICLE_FIELD = 'VEICULO_ID'; PP_DRIVER_FIELD = 'MOTORISTA_ID'; PP_TRIP_FIELD = 'VIAGEM_ID'; ...
У меня есть этот класс: TMyClass = class
публичная функция DoSomethingNice (const Value: string = 'Да, пожалуйста!'): Boolean;
конец; Теперь, используя RTTI, можно ли получить значение по умолчанию для параметра Value of ...
Недавно я увидел вопрос объектно-ориентированного проектирования на каком-то форуме и начал думать об использовании RTTI. Однако это должно быть плохой дизайн, но я не могу придумать альтернативы. Вот простой вопрос: ...
Мне нужно получить имя модуля (пространства имен) любого TRttiType. до сих пор я пробовал следующее. 1) с использованием PTypeData.UnitName это решение работает, но только когда TTypeKind имеет значение tkClass. ...
У меня есть универсальный класс Delphi, который предоставляет функцию с аргументом универсального типа. Внутри этой функции мне нужно передать экземпляр универсального типа другому объекту, ожидающему ...
У меня есть несколько классов стороннего компонента (который я не может изменить). Теперь мне нужно получить доступ к некоторым классам, объявленным в части реализации этого модуля. Вопрос: Возможно ли получить rtti ...
Если у меня есть интерфейс, например: IPluginAPI = interface
['{590DFF0B-CA00-46CC-84B0-3848103D4C5A}'] function add (a : double; b : double) : double; function sub (a : double; b : double) : double;
...
Мне нужно получить список типов форм, но только для типов, производных от данной базовой формы. Я использую Delphi 2010 и расширенный RTTI для просмотра типов Мой текущий код: rc := TRTTIContext.Create;
rtyps := rc....