Я пытаюсь использовать этикетки в своем проекте, но когда я перепрыгиваю через набор инструкций, используя GOTO для передачи управления в другой раздел кода, я получаю эту ошибку, которая говорит: контроль передачи обход инициализации ( определенные переменные) .
Это код, который создает ошибку:
goto label1;
label00:
int a = 0;//the compiler can't let me skip this line
int b; // but this line is fine to skip over
b = 0; //because i initialize it here instead of doing it like the a variable
label1:
//other instructions
< /code>
Как видите, у меня есть инициализирована две переменные, но одна из них определяется, затем инициализируется, но другая определяется и инициализируется в одной и той же строке. < /p>
тот, который определяется и инициализируется в одной и той же линии переменной A , не производит ошибку при пропуске, но другой делает.
i ' m Использует VS2019 для составления этого кода. Я думаю, что это вообще не должно бросить ошибку, и компилятор должен дать вам предупреждение, чтобы вы знали, что вы что -то пропускаете в обоих случаях и и инициализации B .
есть ли какое -либо решение для этого, например, отключение чего -то в настройках?
Подробнее здесь: https://stackoverflow.com/questions/709 ... ialization