А void вообще нормально возвращать?
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 01.09.21 19:19
Оценка: :)
Здравствуйте!

Насколько void похож на остальные типы?

Вот у меня есть функция вида
void doSomething( int arg, ... )


Хочу, допустим, если int arg < 0, то сделать одно, в остальных случаях — другое. Сейчас пишу так:
void doSomething( int arg, ... )
{
    if (arg<0)
    {
        doSomethingElse();
        return;
    }

    // do main job here

}



Хочу эту запись подсократить, как-то так:
void doSomething( int arg, ...)
{
    if (arg<0)
        return doSomethingElse(), (void)0; // Или что тут написать?

    // do main job here
}


Как быть?

ЗЫ Можно конечно почитать стандарт или задрочить ideone.com в поискать рабочего варианта, но пока мне кажется, что тут быстрее ответ можно получить


ЗЫЫ А если исходная функция вообще шаблон?
template<typename ReturnType>
ReturnType doSomething( int arg, ... )
{
    if (arg<0)
        return doSomethingElse(), (ReturnType)0; // Или что тут написать?
}


и инстанциируется с типом void?
Маньяк Робокряк колесит по городу
Отредактировано 01.09.2021 19:23 Marty . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.