Может ли запись Джинни содержать необязательное поле интерфейса

Является ли этот код действительным в Джинни, и some_record можно сгенерировать для цели с?

some_service = interface +c
{
do_some_action(): bool;
}

some_record = record
{
service: optional< some_service >;
}

0

Решение

Мне кажется, это просто и актуально (хотя, не пытаясь это сделать, я не уверен, что я не упустил ни одного случая с ошибками).

Обратите внимание, что дополнительные интерфейсы в Djinni довольно бессмысленны, если только вы не используете поддержку указателей, не допускающих обнуления (см. Аргументы cpp-nn- *). Это зависит от использования ненулевого шаблона в C ++, такого как пп<> Без этого интерфейсы все равно обнуляются по умолчанию. При включенном nn интерфейсы по умолчанию не обнуляются, и необязательная версия заканчивается как обнуляемая версия.

1

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

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

По вопросам рекламы [email protected]