Ошибка в Android studio c++: Type 'void' used in 'if' condition is not scalar
Я написал вот такой код и у меня возникает ошибка "Type 'void' used in 'if' condition is not scalar":
void (*ObjectDestroy)(void*);
void (*PLAYER)(void*);
class Ray {};
void (*PhysicsRaycast)(Ray, RaycastHit, float);
Ray (*ViewPointToRay)(Vector3);
void (*old_func)(void *instance);
void func(void *instance) {
if (instance != NULL) {
RaycastHit raycastHit;
if (!GameManagerLateUpdateHookInitialized) {
GameManagerLateUpdateHookInitialized = true;
}
if (bool && PhysicsRaycast(ViewPointToRay(Vector3(0.5f, 1f, 0f)), raycastHit , 3f)) // Type 'void' used in 'if' condition is not scalar
{
ObjectDestroy(PLAYER);
}
}
old_func(instance);
}
Можно ли её исправить её исправить?
Ответы (1 шт):
Автор решения: Andrej Levkovitch
→ Ссылка
А что собственно непонятно? Вам же компилятор прямо говорит, что ваша функция PhysicsRaycast возвращает void который вы пытаетесь обработать в if, хотя в if могут обрабатываться только скаляры (int, bool и т.д.)