У меня есть что-то подобное в моей сберегательной схеме:Установки союза в C++ с использованием бережливости
struct TestStatusOne { .... }
struct TestStatusTwo { .... }
union TestStatus {
1: TestStatusOne ONE
2: TestStatusTwo TWO
}
struct TestResult {
1: required TestStatus status
}
я могу определить этот штраф с помощью библиотеки Java, Perl и Python, но я возникает проблемы, делая это с C++ библиотеки. Вот пример в Java:
TestResult testResult = new TestResult(
new TestStatus(TestStatus._Fields.findByName("ONE"), testStatus)
);
Ближайший я должен получить это определено в С ++:
TestResult testResult;
testResult.status.ONE = testStatus;
Но когда я пытаюсь отправить на сервер я получаю сообщение об ошибке, говорящее мне поле состояния нет, а дамп структуры показывает это как null.
Как установить статус теста?
Использование Thrift 0.6.1.