Ans) c`est parce que l`objet n`est pas nécessaire pour appeler une méthode statique. Par conséquent, les variables statiques conservent leur valeur précédente dans leur étendue précédente et ne sont pas initialisées à nouveau dans la nouvelle étendue. Le code ci-dessus s`exécutera dès que la classe MyClass est chargée, avant que la méthode statique soit appelée et avant même qu`une variable statique ne soit accédée. Ainsi, la mémoire dynamique peut être allouée à partir d`une fonction et libérée d`une autre fonction. Faites défiler un peu pour le voir). Le code initialise le membre d`ID statique à 100. Dans de nombreuses langues, les variables globales sont toujours statiques, mais dans certaines langues elles sont dynamiques, alors que les variables locales sont généralement automatiques, mais peuvent être statiques. Les objets const ne peuvent pas accéder aux fonctions non const (l`objet n`est pas autorisé à être modifié, la fonction souhaite modifier l`objet, non autorisé). Par exemple, dans le programme ci-dessous, la valeur de x est imprimée comme 0, tandis que la valeur de y est quelque chose de garbage.
Pourquoi? Ans) non, l`un des moyens était le bloc statique, mais il était possible jusqu`à JDK 1. Comme nous l`avons mentionné ci-dessus, la variable statique n`obtiendrez la mémoire qu`une seule fois, si un objet modifie la valeur de la variable statique, il conservera sa valeur. Inverser l`ordre est probablement facile, mais la norme c++ ne pas énoncer un ordre spécifique, il n`y a donc aucune raison de choisir une façon sur l`autre. Sauf si nous prenons des mesures spéciales, les fonctions et les variables globales dans notre. N`est-ce pas une solution de mise à jour pour inverser le processus? Le modèle de conception Singleton est un bon exemple de la fonction membre statique et de la variable membre statique. N`est-ce pas une solution de mise à jour pour inverser le processus? En général, l`allocation de mémoire statique est l`allocation de mémoire au moment de la compilation, avant l`exécution du programme associé, contrairement à l`allocation de mémoire dynamique ou à l`allocation de mémoire automatique où la mémoire est allouée comme requis au moment de l`exécution. Y a-t-il autre chose qui le différencie d`un monde ordinaire? Mais c reste en mémoire même lorsque la fonction f () n`est pas exécutée. Et si oui, pourquoi est-il assumer la même façon à chaque fois? S`il est incrémenté, il ne reflétera pas d`autres objets.