Мне нужно устранить ошибку, которую собирает компилятор - я понимаю, почему она набирает эту ошибку, но ее нужно разрешить, поскольку функция (сброс ошибки) будет выполняться только тогда, когда указатель is инициализирован.Устранение ошибки компилятора: указатель потенциально неинициализирован
Вот мой псевдо-код:
if (incoming_message_exists)
{
msg_class* current_msg;
/*current_msg will become either value_1 or value_2*/
/*code block 1*/
if (condition_is_fulfilled)
{
current_msg = value_1;
}
/*code block 2*/
else
{
current_msg = value_2;
}
/*code block 3*/
/*bool function performed on current_msg that is throwing error*/
if (function(current_msg))
{
//carry out function
}
}
Я предпочел бы, чтобы не выполнять блок кода 3 в 1 и 2, но если это единственное решение, то я буду. Заранее спасибо!
Initalize current_msg с NULL (или null_ptr в C++ 11) – Xale
Какой глупый компилятор это? Вы присваиваете значение 'msg_class' в обеих ветвях оператора' if' ... Оно не может ** возможно ** быть неинициализированным ... –
@ H2CO3 Если блок 'else if' не отображается там, где он не является задавать. –