Error del compilador CS0150
Actualización: noviembre 2007
Mensaje de error
Se espera un valor constante
A constant value is expected
Se encontró una variable donde se esperaba una constante. Para obtener más información, vea switch (Referencia de C#).
El código siguiente genera el error CS0150:
// CS0150.cs
namespace MyNamespace
{
public class MyClass
{
public static void Main()
{
int i = 0;
int j = 0;
switch(i)
{
case j: // CS0150, j is a variable int, not a constant int
// try the following line instead
// case 1:
}
}
}
}
Este error también se produce cuando un tamaño de matriz se especifica con un valor de variable y se inicializa con un inicializador de matrices. Para quitar el error, inicialice la matriz en una instrucción o instrucciones independientes.
// CS0150.cs
namespace MyNamespace
{
public class MyClass
{
public static void Main()
{
int size = 2;
double[] nums = new double[size] { 46.9, 89.4 }; //CS0150
// Try the following lines instead
// double[] nums = new double[size];
// nums[0] = 46.9;
// nums[1] = 89.4;
}
}
}