Erro do Compilador CS0269
Uso do parâmetro de saída não atribuído 'parameter'
O compilador não pôde verificar se um valor foi atribuído ao parâmetro de saída antes de ele ser usado; seu valor pode ser indefinido quando atribuído. Atribua um valor aos parâmetros out
no método chamado antes de acessar o valor. Se for necessário usar o valor da variável passada, em vez disso, use um parâmetro ref
. Para obter mais informações, confira Parâmetros de método.
Exemplo 1
O exemplo a seguir gera o erro CS0269:
// CS0269.cs
class C
{
public static void F(out int i)
// One way to resolve the error is to use a ref parameter instead
// of an out parameter.
//public static void F(ref int i)
{
// The following line causes a compiler error because no value
// has been assigned to i.
int k = i; // CS0269
i = 1;
// The error does not occur if the order of the two previous
// lines is reversed.
}
public static void Main()
{
int myInt = 1;
F(out myInt);
// If the declaration of method F is changed to require a ref
// parameter, ref must be specified in the call as well.
//F(ref myInt);
}
}
Exemplo 2
Isso também poderá acontecer se a inicialização de uma variável ocorrer em um bloco de tentativa, que o compilador não pode verificar, será executada com êxito:
// CS0269b.cs
class C
{
public static void F(out int i)
{
try
{
// Assignment occurs, but compiler can't verify it
i = 1;
}
catch
{
}
int k = i; // CS0269
i = 1;
}
public static void Main()
{
int myInt;
F(out myInt);
}
}
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de