goto e #region/#endregion em C#
Nesta publicação aprende-se a trabalhar com o goto e o #region/#endregion para que se possa usar esses mesmos conhecimentos e assim evoluir.
- o goto transfere o controlo da nossa aplicação em plena execução diretamente para um pedaço de código rotulado;
- o goto é bastante usado nos switch e nos ciclos profundamente aninhados;
- o #region permite especificar um pedaço de código que se pode expandir ou recolher e é bastante usado em grandes ficheiros (neste caso, classes) com muito código porque tem como vantagem a devida concentração (assim sendo, a do programador) apenas no pedaço de código que estamos a trabalhar porque o resto está oculto, ou seja, recolhido;
- para se fechar um bloco #region é necessário o #endregion.
#region Bibliotecas
using System;
#endregion
namespace Base {
class GotoERegionEndregion {
#region Método Run()
public void Run() {
Console.WriteLine($"Resultado do método TestarGoto(): {TestarGoto()}");
}
#endregion
#region Método TestarGoto()
private int TestarGoto() {
var numero = 0;
for (int i = 1; i <= 10; i++) {
for (int j = i; j <= 10; j++) {
for (int k = 0; k <= 10; k++) {
if (j == 5 && k == 5)
goto PrimeiroCiclo;
}
numero++;
}
PrimeiroCiclo:
continue;
}
return numero;
}
#endregion
}
}
// Resultado do método TestarGoto(): 25
Não te esqueças de assistir ao vídeo e podes sempre ler esta publicação em inglês.