Bonjour,
Je suis en train de refaire tous les TP que j'ai fais en cours C++ pour m'entrainer à la dérivation de classe, polymorphisme... Car j'ai du mal avec ces notions.
J'ai une correction de l'exercice mais il y a plusieurs bouts de code que je ne comprends pas. Je mets la consigne en premier :
Pièce jointe 177780
Je mets le code IntegrTrapezes.cxx :
Voici la correction :Code:
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
La première ligne que je ne comprends pas c'est dans le fichier IntegrTrapezes.cxx ligne 23,Code:
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
Je ne comprends pas pourquoi faire un pointeur mélangé avec un double... J'ai du mal.Code:typedef double (*FdeX) (double);
Maintenant dans le fichier FunctorIntegrTrapezes.cxx
Si j'ai bien compris, on dérive la classe IUnaryFunction en deux nouvelles classes cos et sin mais pourquoi faire cela car on utilisait une seule classe avant ? Est-ce pour qu'elle accepte plusieurs types de données ? ça ne m'a pas l'air d'être cela car on définit un typedef juste après (je ne comprends pas non plus ce typedef :ligne 35.Code:typedef IUnaryFunction <double, double> CUnFctor_dd;
Enfin ligne 37, on définit une structure que l'on dérive, pourquoi faire cela ? Quand j'ai essayé de faire l'exercice j'ai crée une classe et non une structure :.Code:struct CFctor_cos : public CUnFctor_dd
Merci de votre aide ! :)
