J'ai remarqué un comportement très curieux que, si standard, je serais très heureux d'exploiter (ce que j'aimerais en faire est assez complexe à expliquer et non pertinent à la question).Déclarer une fonction statique et postérieure non statique: est-elle standard?
Le comportement est:
static void name();
void name() {
/* This function is now static, even if in the declaration
* there is no static keyword. Tested on GCC and VS. */
}
Ce qui est curieux est que l'inverse produit une erreur de compilation:
void name();
static void name() {
/* Illegal */
}
Alors, est-ce standard et puis-je attendre d'autres compilateurs à se comporter de la même manière ? Merci!
J'utilise C++, mais j'ai ajouté un tag C parce que je pensais que ce serait le même en C. –
oh et merci pour la bonne réponse –