Noms des arguments de fonction
Les noms d'arguments de fonction dans les définitions de fonction sont considérés comme étant dans la portée du bloc le plus à l'extérieur de la fonction. Par conséquent, il s'agit de noms régionaux. Ils se trouvent hors de portée lors de la sortie de la fonction.
Les noms d'arguments de fonction dans les déclarations de fonctions (prototypes) sont dans la portée locale de la déclaration et se trouvent hors de portée à la fin de la déclaration.
Les arguments par défaut sont dans la portée de l'argument pour lequel ils sont la valeur par défaut, comme décrit les deux paragraphes précédents. Toutefois, ils ne peuvent pas accéder à des variables locales ou à des membres de classes non statiques. Les arguments par défaut sont évalués au point de l'appel de fonction, mais ils sont évalués dans la portée d'origine de la déclaration de fonction. Par conséquent, les arguments par défaut pour les fonctions membres sont toujours évalués dans la portée de classe.