Volver a la página principal
martes 19 noviembre 2024
15

Cómo declarar una constante en C#

En C#, las constantes son valores que no cambian durante la ejecución del programa. Se definen utilizando la palabra clave const. Una constante debe ser asignada al momento de su declaración, y su valor no puede ser modificado posteriormente.

Declarar una constante con const

La forma más común de declarar una constante en C# es usando la palabra clave const.

Sintaxis:

const Tipo NombreConstante = Valor;
  • Tipo: El tipo de dato de la constante (por ejemplo, int, double, string).
  • NombreConstante: Nombre de la constante, por convención en PascalCase.
  • Valor: El valor asignado a la constante, obligatorio al declararla.

Ejemplo:

using System;

class Program {
    const double Pi = 3.1416; // Declarar una constante
    const string AppName = "MiAplicación";

    static void Main() {
        Console.WriteLine($"El valor de Pi es: {Pi}");
        Console.WriteLine($"Nombre de la aplicación: {AppName}");
    }
}

Salida:

El valor de Pi es: 3.1416
Nombre de la aplicación: MiAplicación

Características de const

1. Inmutabilidad: Una vez declarada, su valor no puede cambiar.

2. Tiempo de compilación: Su valor debe ser conocido en tiempo de compilación.

3. Acceso global: Las constantes son static por naturaleza, no requieren una instancia de clase para ser accesibles.

Declarar constantes de clase

Se pueden declarar constantes dentro de una clase para que pertenezcan al ámbito de esa clase.

Ejemplo:

class MathConstants {
    public const double Pi = 3.1416;
    public const double Euler = 2.718;
}

class Program {
    static void Main() {
        Console.WriteLine($"Pi: {MathConstants.Pi}");
        Console.WriteLine($"Euler: {MathConstants.Euler}");
    }
}

Usar readonly para valores constantes en tiempo de ejecución

Si necesitas valores que no cambien pero cuyo valor se asigna en tiempo de ejecución (no en compilación), utiliza la palabra clave readonly.

Ejemplo:

class Configuracion {
    public static readonly string FechaInicio = DateTime.Now.ToString("yyyy-MM-dd");
}

class Program {
    static void Main() {
        Console.WriteLine($"Fecha de inicio: {Configuracion.FechaInicio}");
    }
}

Diferencias entre const y readonly

Característica const readonly
Modificación No puede cambiar. No puede cambiar después de la inicialización.
Tiempo de asignación Solo en tiempo de compilación. Puede ser asignado en tiempo de ejecución.
Contexto Siempre static. Puede ser estático o de instancia.

Referencia oficial

Para más detalles, consulta la documentación oficial de C#.

Etiquetas:
csharp
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer