исключение
От: Аноним  
Дата: 05.02.04 14:27
Оценка:
подскажите

напр для ф-и последний return вроде бы не нужен




int get_val()
{
  if (some)
   return 1;
  else
   throw some_ex();
  return 0; // нужен ли данный оператор
}
Re: исключение
От: Аноним  
Дата: 05.02.04 14:31
Оценка:
Может чтобы ворнинг про то, что не все statements возвращают значения подавить ? (если он есть конечно) Убери и увидишь, будет ли ворнинг.
Re: исключение
От: VNG Беларусь https://organicmaps.app/
Дата: 05.02.04 14:33
Оценка:
Здравствуйте, Аноним, Вы писали:

А>подскажите


А>напр для ф-и последний return вроде бы не нужен



А>


А>int get_val()
А>{
А>  if (some)
А>   return 1;
А>  else
А>   throw some_ex();
А>  return 0; // нужен ли данный оператор
А>}

А>


Нет, не нужен. В MSVC++ 6.0, 7.0, 7.1 при Warning Level 4 даже выдается предупреждение.
Re[2]: исключение
От: Libra Россия  
Дата: 05.02.04 15:12
Оценка: +1
Здравствуйте, VNG, Вы писали:

а почему не написать вот так?
А>>
А>>int get_val()
А>>{
А>>  if (!some) throw some_ex();
А>>   return 1;
А>>}
А>>
Species come and go, but the earth stands forever fast...
Re: исключение
От: vadim77 Израиль  
Дата: 05.02.04 23:12
Оценка:
Здравствуйте, Аноним, Вы писали:

А>подскажите


А>напр для ф-и последний return вроде бы не нужен



А>


А>int get_val()
А>{
А>  if (some)
А>   return 1;
А>  else
А>   throw some_ex();
А>  return 0; // нужен ли данный оператор
А>}

А>


Теоретически не нужен, но на мой взгляд return в конце тела функции, просто "правило хорошего тона".
Re[2]: исключение
От: Vamp Россия  
Дата: 06.02.04 07:50
Оценка:
Не нужен он тут. Unreacheable code.
Да здравствует мыло душистое и веревка пушистая.
Re[2]: исключение
От: Владик Россия  
Дата: 06.02.04 09:53
Оценка:
Здравствуйте, vadim77, Вы писали:

V>Теоретически не нужен, но на мой взгляд return в конце тела функции, просто "правило хорошего тона".


На мой взгляд достаточно просто переписать нормально:

if (!some)
    throw some_ex();
return 1;


И короче, и нагляднее, и вопросов не возникает.
Как все запущенно...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.