Si elle est dans votre classe seulement, je mets habituellement au sommet de la section privée:
class Foo
{
public:
void some_functions(void);
private:
typedef std::pair<std::string, std::string> StringPair;
typedef std::map<StringPair, std::string> StringPairMap;
StringPairMap _stringMap;
}
Pour clarifier les choses, comme la plupart des choses que vous voulez préciser ces choses aussi local que possible. Les variables doivent faire ceci: vous ne définissez pas int i
pour votre boucle for jusqu'à ce que vous ayez atteint la boucle, etc.
De même, si votre classe utilise ces typedef en interne, faites ce que j'ai dit plus haut. Si seulement une fonction spécifique de votre classe a besoin de cette typedef, placez le typedef au début de cette fonction.
Si vous avez besoin d'exposer ce typedef aux clients de la classe, j'aime placer le typedef en haut de la section public
.
Je voudrais upvote, mais ce 'vide 'dans votre liste de paramètres me fait mal aux yeux. – avakar
Je l'ai toujours trouvé plus clair. C'est un appel de fonction: 'int i = perform_calc()'. Il n'y a pas de «vide», donc en y mettant un «void», je n'ai plus à me souvenir du contexte lorsque je lis des fonctions («est-ce un appel de fonction ou une définition de fonction»?) – GManNickG
de nouveau en toi. – Eugene