2.1.9 Les attributs de la classe Shadok

Il faut faire attention avec les attributs, a-priori personne n'en a besoin à par la classe Shadok (et même dans ce dernier cas c'est mieux de faire comme on va faire), donc nous allons rendre ces variables privées.

Voici à quoi va ressembler la classe Shadok :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#ifndef __SHADOK_H__
#define __SHADOK_H__

#include <iostream>
#include <string>

namespace ShadokOption{
	enum Type{
		SHADOKDUHAUT,
		SHADOKDUBAS,
	};
};

class Shadok{
	public:
		Shadok();
		Shadok(const Shadok & shadok);
		~Shadok();
		
		void parler();
		void pomper();
		
	private:
		std::string p_nom;
		unsigned int p_age;
		ShadokOption::Type p_type;
};

#endif

Comme nous l'avons définit en namespace, il faut mettre ShadokOption:: devant Type.

Pourquoi il y a un p_ devant les noms des variables, enfin des attributs ?

Tout est encore question de convention...

La convention (enfin normalement) est de mettre un "_" devant le nom d'un attribut d'une classe, cela permet de le repérer du premier coup d’œil (et ça permet de gagner pas mal de temps). Pour ma part, je n'aime pas commencer un nom de variable par un "_" tout seul, donc je met un "p" devant, c'est ma convention a moi et vous pouvez très bien vous en trouver une autre. Encore une fois, ce qui est important c'est que vous fassiez toujours pareil, mais pas forcément comme moi.