Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
'variable' es de tipo 'type'. Un campo const de un tipo de referencia que no sea de cadena solo se puede inicializar con NULL.
Una expresión constante es una expresión que se puede evaluar por completo en tiempo de compilación. Como la única manera de crear un valor no NULL de un tipo de referencia es aplicar el operador new, y como el operador new no se permite en una expresión constante, el único valor posible para las constantes de tipos de referencia diferentes de cadena es NULL.
Si encuentra este error intentando crear una matriz de cadenas const, la solución es hacer que la matriz sea readonly e inicializarla en el constructor.
Ejemplo
En el ejemplo siguiente se genera el error CS0134:
// CS0134.cs
// compile with: /target:library
class MyTest {}
class MyClass
{
const MyTest test = new MyTest(); // CS0134
//OK
const MyTest test2 = null;
const System.String test3 = "test";
}