J'ai écrit du code sans réaliser pourquoi je peux accéder à des valeurs constantes dans les méthodes statiques.
Pourquoi une variable const est-elle disponible dans une méthode statique?
Pourquoi est-il possible d'accéder aux valeurs const
sans le déclarer comme static
?
Par ex) Il est légal d'appeler IMAGE_FILE_EXTENSION
au sein AddImageToDocument(...)
public abstract class ImageDocumentReplacer : DocumentReplacer
{
private const string IMAGE_FILE_EXTENSION = ".tif";
private static void AddImageToDocument(int documentId, string separatedPath)
{
Console.WriteLine(IMAGE_FILE_EXTENSION);
}
}
Ajoutant simplement: Essayez d'utiliser static const, et votre compilateur va probablement se plaindre;) –
@Samuel: Oui, siree il fait! – Sung
Je n'ai jamais pensé que const était * implicitement * statique ... Merci Mehrdad. – Sung