我想通过引用返回到交换机内部的变量来返回,例如:
sometype & getbar(); void foo() { switch ( {statement} ) { case {statement}: sometype & handle = getbar(); ...
但我收到编译器错误:
'case'标签跳过'identifier'的初始化
'default'标签跳过'identifier'的初始化
它似乎不可能这样做:
void foo() { sometype & handle; switch ( {statement} ) { case {statement}: handle = getbar(); ...
因为引用变量需要初始化.
有没有办法保持switch语句?
就在这里.将case语句的主体括在括号中,如下所示:
case {statement}: { sometype & handle = getbar(); ... }