# linha (translation from VPE for Csharp Reference)
#line permite modificar número de linha do compilador e (opcionalmente) a saída de nome de arquivo para erros e avisos. Este exemplo mostra como relatar dois avisos associados com os números de linha.The #line 200 diretiva força número de linha seja 200 (Embora o padrão é 7). A Outros linha (9) segue a sequência normal do padrão de #line diretiva.
class MainClass
{
static void Main()
{
#line 200
int i; // CS0168 on line 200
#line default
char c; // CS0168 on line 9
}
}
Comentários
The #line diretiva pode ser usada em uma etapa automatizada e intermediária no processo de compilação. Por exemplo, se linhas foram removidas do arquivo de código de fonte, mas ainda quiser o compilador gerar com base na linha original numeração no arquivo de saída, pode remover linhas e, em seguida, simular a linha original de numeração com #line.
The #line hidden diretiva oculta as linhas sucessivas do depurador, de modo que quando o desenvolvedor percorre o código, qualquer linhas entre um #line hidden e o próximo #line diretiva (pressupondo que ele não seja outra #line hidden diretiva) ele irá ser apresentada pela. Essa opção também pode ser usada para permitir que o ASP.NET diferenciar entre código definido pelo usuário e gerado pelo computador.Embora o ASP.NET seja o consumidor principal desse recurso, é provável que mais fonte fará com que geradores de usá-lo.
A #line hidden diretiva não afeta os nomes de arquivo ou os números de linha no relatório de erros. Ou seja, se for encontrado um erro em um bloco oculto, o compilador relatará o corrente arquivo de nome e o número de linha do erro.
The #line filename diretiva especifica nome de arquivo que você deseja que apareça na saída do compilador. Por padrão, o nome real do arquivo de código-fonte é usado.O nome de arquivo deve ser colocados entre aspas duplas ("").
Um arquivo de código-fonte pode ter qualquer número de #line diretivas.
Exemplo 1
O exemplo a seguir mostra como o depurador ignora o oculto linhas no código.Quando você executa o exemplo, ela exibirá três linhas de texto.No entanto, quando você conjunto um ponto de interrupção, sistema autônomo mostrado no exemplo e pressione F10 para depurar o código, você irá notar que o depurador ignora o oculto linha.Observe também que, mesmo se você conjunto um ponto de interrupção na linha de oculta, o depurador irá ainda ignorá-la.
// preprocessor_linehidden.cs
using System;
class MainClass
{
static void Main()
{
Console.WriteLine("Normal line #1."); // Set break point here.
#line hidden
Console.WriteLine("Hidden line.");
#line default
Console.WriteLine("Normal line #2.");
}
}