Пока функция возвращает целочисленный тип, вы можете это делать.Итак, учитывая:
int someFunction( void ) ;
Тогда:
switch( someFunction() )
{
...
действительно.Он немного отличается от:
int x = someFunction() ;
switch( x )
{
...
, но последний, возможно, легче отладить.Например, вы можете пошагово выполнить последний шаг и узнать из значения x
, в каком случае будет введен регистр, и иметь возможность изменить x
для принудительного выбора альтернативного пути.У первого мало заслуг, кроме краткости.