Bonjour à tous, j'apprend en ce moment le C++ grâce au livre de claude delannoy ainsi que son livre avec des TPs dedant.
Cependant je n'arrive pas à compiler une source qui pour moi ne possède pas d'érreur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
/*main.cpp*/
#include <iostream>
#include "vecteur3d.h"
 
int main(void)
{
	Vecteur3d *vec1=new Vecteur3d();
	Vecteur3d *vec2=new Vecteur3d(2,5.3);
	Vecteur3d *vec3=new Vecteur3d(2.5,2,3);
 
	cout << "\nNombre d'objets cree:" << Vecteur3d::affNbObjets();
	return 0;
}
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
 
/*vecteur3d.h*/
#ifndef VECTEUR3D_H
#define VECTEUR3D_H
/************************************************/
/*CLASS VECTEUR3D.H  02/11/05        */
/************************************************/
//Declaration de classe
class Vecteur3d
{
private:
	float x,y,z;
	static int nb_objets;
public:
	//Constructeur avec argument par défault et surdéfinition
	Vecteur3d(float=0,float=0,float=0);
	Vecteur3d(Vecteur3d &);//passage par reference
 
	//Methodes
	static int affNbObjets(void);
	int equals (Vecteur3d);//Passage par copie mais il est préférable d'utiliser par reference
};
int Vecteur3d::nb_objets=0;//Initialisation du membre static
#endif
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
 
/*vecteur3d.cpp*/
#include "vecteur3d.h"
/**************************************************/
//Definition de classe (methodes...)
Vecteur3d::Vecteur3d(float a, float b, float c)
{
	x=a;
	y=b;
	z=c;
}
 
Vecteur3d::Vecteur3d(Vecteur3d &vec)
{
	x=vec.x;
	y=vec.y;
	z=vec.z;
}
 
int Vecteur3d::affNbObjets(void)
{
	return nb_objets;
}
voici mon pb lors de la compilation (j'utilise microsoft visual studio):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
g:\Tp\Tp_c++\Maison\Tp5\vecteur3d\vecteur3d\vecteur3d\main.cpp(10): error C2065: 'cout' : identificateur non déclaré
g:\Tp\Tp_c++\Maison\Tp5\vecteur3d\vecteur3d\vecteur3d\main.cpp(7): warning C4305: 'argument' : troncation de 'double' à 'float'
j'ai l'impression qu'il ne prend pas en compte les définitions de methodes dans vecteur3d.cpp
que faire ?