📦 C# Constants – Define Fixed Values with const in C#
🧲 Introduction – Why Use Constants in C#?
In C#, constants are used to define immutable values that remain unchanged throughout the life of a program. Declaring constants helps prevent accidental changes and makes your code more reliable, readable, and maintainable.
🎯 In this guide, you’ll learn:
- How to declare and use constants in C#
- Differences between
constandreadonly - When and why constants are preferred
- Common best practices and examples
🔍 Core Concept – What Are Constants?
A constant in C# is a value that is assigned at compile time and cannot be changed later. It must be declared with the const keyword and initialized when defined.
🔹 Syntax:
const data_type constant_name = value;
Example:
const double Pi = 3.14159;
🧠 Note: Constants are implicitly static and accessible without object instantiation.
💻 Code Example – Declaring and Using Constants
using System;
class Circle
{
const double Pi = 3.14159;
static void Main()
{
double radius = 5;
double area = Pi * radius * radius;
Console.WriteLine($"Radius: {radius}");
Console.WriteLine($"Area: {area}");
}
}
📤 Output:
Radius: 5
Area: 78.53975
⚙️ const vs readonly
| Feature | const | readonly |
|---|---|---|
| Assigned when? | At compile time | At runtime (in constructor) |
| Mutability | Immutable, cannot change | Immutable after constructor |
| Use Case | Fixed, unchanging values (e.g., Pi) | Runtime-initialized fixed values |
| Static? | Implicitly static | Must be explicitly marked if static |
📘 Best Practice: Use const for universal constants (e.g., Pi, MaxSize) and readonly for configuration or runtime constants.
💡 Tips, Pitfalls & Best Practices
💡 Tip: Use all-uppercase naming convention for constants (MAX_USERS, DEFAULT_RATE) in some enterprise teams.
⚠️ Pitfall: Avoid using const for values that might change in future versions — re-compilation is needed in every referencing assembly.
📘 Best Practice: Place constants in a dedicated Constants class or static class for global access and organization.
🛠️ Use Cases – Where to Use Constants
- Mathematical constants like
Pi,E - Limits like
MAX_RETRIES,TIMEOUT - Configuration settings that never change
- Message templates or version strings
📌 Summary – Recap & Next Steps
C# constants are perfect for fixed values that never change. They’re compile-time safe, help prevent bugs, and improve code clarity.
🔍 Key Takeaways:
- Use
constfor compile-time fixed values - Constants are implicitly
static - Use
readonlywhen the value is known only at runtime
⚙️ Coming next: Dive into 📦 C# Data Types to understand how different values are categorized and stored.
❓ FAQ – C# Constants
❓ What is a constant in C#?
✅ A const is a fixed value known at compile time and cannot be modified later.
❓ Can I assign a constant inside a method?
✅ Yes, but the value must still be fixed at compile time.
❓ What’s the difference between const and readonly?
✅ const is for compile-time constants, readonly for values set at runtime.
❓ Are constants implicitly static?
✅ Yes. Constants are treated as static by the compiler.
❓ Can constants be public?
✅ Yes. You can specify access modifiers like public const int Max = 100;.
Share Now :
