Как получить TypeName базового типа в C ++ / WinRT?

Я пытаюсь реализовать ICustomPropertyProvider::Type() метод, однако я не могу найти способ получить TypeName типа C ++ / WinRT. Видимо у вас есть Object::GetType а также T::typeid в C ++ / CX, но не в C ++ / WinRT.

Я попробовал следующий код, но это было просто дикое предположение, поскольку это была единственная вещь, которую я смог найти, которая имела бы дистанционное отношение к типам. я предполагаю typeid() однако не имеет ничего общего с XAML, поскольку единственная гарантия, которую он дает, состоит в том, что возвращаемая строка уникально идентифицирует.

using namespace Windows::Devices::Enumeration;
using namespace Windows::UI::Xaml::Interop;

TypeName name;
name.Name = typeid(DeviceInformation).name();
name.Kind = TypeKind::Metadata;

0

Решение

winrt::xaml_typename<Type>() Шаблон функции — это то, что вам нужно.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector