Bonjour tout le monde !

Voila je commence le C++ en cours et j'ai un exercice ou je dois faire:

-un contructeur par défaut
-un autre constructeur qui initialise le vecteur avec des zeros
-un constructeur par copie
-un destructeur

j'ai fait mes lignes de codes mais j'ai une erreur et je vois pas comment la résoudre.

voici le fichier header
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
30
31
32
33
 
using namespace std;
 
class vecteur
{
 private :
  int size; 
  double* p;
 public :
  vecteur() {size=0;}//contructeur par défaut
  vecteur(int);
  vecteur(const  vecteur& v);
  ~vecteur();
};
 
vecteur :: vecteur(int taille)
{p=new double[taille=size];
  for (int i=0 ;i<taille ;i++)
    p[i]=0;}
 
 
vecteur :: vecteur(const  vecteur& v)
{ p=new double[size=v.size];
  for (int i=0 ;i<size; i++)
    p[i]=v[i];}
 
    vecteur :: ~vecteur()
    {delete[] p;}
 
void vecteur :: affiche()
{ for (int i=0; i<size; i++)
    cout << p[i] <<"";
    cout << "\n";}
Et ici mon fichier .cpp (juste pour tester la compilation)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
#include <iostream>
#include "vecteur.h"
 
 
using namespace std;
 
int main()
{ 
    vecteur a(3);
    a.affiche();
    return(0);
 
}
J'ai un probleme qui m'indique un no match pour [] et pas de void pour le dernier .

pouvez vous m'indiquer l'erreur dans mon code et m'expliquer le pourquoi du comment?

P.S:Je suis un noob en C++(en programmation en général) et je viens de commencer il y a deux jours.