три значения (например bool может принимать два значения). Есть ли подобный нативный тип переменной?
А может лучше енам?
Не, нужно именно нативный тип. Что-то между uint8_t и bool. В принципе подойдет и вариант с возможными восьми (8) значениями
enum тоже нативный, но нужно без него как-то
Для того, чтобы передать переменную в JNI и обратно, нужен нативный тип данных, который есть и в Java, и в C++
Передавать uint8_t и с каждой из сторон конвертировать его в enum
Да, я тоже об этом подумал. Я новичок в C++, думал, что есть нативный тип данных такой, который может принимать только три значения, но видимо такого нет. Спасибо
Какие три значения?
Указатель на bool в каком-то смысле принимает три значения: nullptr, true, false
Указатель на bool принимает 2^64 значения
это тоже в какомто смысле потомучто там 48 бит значащих же
разве это не зависит от платформы
Вам просто нужно использовать ЭВМ Сетунь, там точно есть нативный тип
std::optional<bool>
максимально близко - использовать знаковый инт и сравнивать с нулем, ровно 3 варианта (меньше 0, 0, больше 0) и точно одинаковое представление в жаве и плюсах :)
Я работал с JNI там строки вообще специфично конвертятся. Помню из C++ проги создавал JVM и запускал яву
Обсуждают сегодня