Erreur anormalle codeblock

Fermé
ati14 Messages postés 426 Date d'inscription mercredi 2 juillet 2014 Statut Membre Dernière intervention 7 décembre 2019 - 1 déc. 2017 à 20:18
ati14 Messages postés 426 Date d'inscription mercredi 2 juillet 2014 Statut Membre Dernière intervention 7 décembre 2019 - 8 déc. 2017 à 17:56
bonjour
je suis en étude d'informatique est on y aprend le code en C++
j'ai donc installé codeblock, je me suis lancé dans un projet fou (que je ne tiendrais peut être pas mais peu importe il me faut une direction)

j'ai cette erreur la :
undefined reference to 'point::point(int, int, int)'

pour la ligne
point A(0,0,0);

le problemme c'est que le meme code marche sous C++ builder =S
merci de votre aide

3 réponses

Dalfab Messages postés 706 Date d'inscription dimanche 7 février 2016 Statut Membre Dernière intervention 2 novembre 2023 101
2 déc. 2017 à 10:25
Bonjour,

L'erreur n'est pas une erreur de compilation, mais une erreur à l'édition des liens. Le fichier qui définit la constructeur doit aussi être mis dans la liste des fichiers du projet.
0
ati14 Messages postés 426 Date d'inscription mercredi 2 juillet 2014 Statut Membre Dernière intervention 7 décembre 2019 13
2 déc. 2017 à 20:17
c'est ce que j'ai fait
0
ati14 Messages postés 426 Date d'inscription mercredi 2 juillet 2014 Statut Membre Dernière intervention 7 décembre 2019 13
Modifié le 2 déc. 2017 à 16:56
je vous passe tout le code :
Main.cpp
#include <iostream>
using namespace std;
#include "point.h"

int main()
{
point A(0,0,0),
      B(5,0,0),
      C(0,5,0),
      D(0,0,5) ;
float distAB,
      aireABC,
      cubeABCD ;
//--------------------------//
distAB = A.dist(B) ;
aireABC = A.aire(B,C) ;
cubeABCD = A.cube(B,C,D) ;
//--------------------------//
return 0 ;
}

point.h
#ifndef POINT_H_INCLUDED
#define POINT_H_INCLUDED
class point {
private:
    int X,
        Y,
        Z,
        groupe,
        model ;
public:
    point() ;
    point(int prmX,int prmY,int prmZ) ;
    ~point() ;

    //getter
    int getX(void) ;
    int getY(void) ;
    int getZ(void) ;
    int getGroupe(void) ;
    int getModel(void) ;

    //setter
    void setX(int prmX) ;
    void setY(int prmY) ;
    void setZ(int prmZ) ;
    void setGroupe(int prmGroupe) ;
    void setModel(int prmModel) ;

    //fonction
    float dist(point prmPt) ;
    float aire(point prmPt1,point prmPt2) ;
    float cube(point prmPt1,point prmPt2,point prmPt3) ;

} ;
#endif // POINT_H_INCLUDED

point.cpp
#include <math.h>
#include hdrstop
#include "point.h"
point :: point() {
    X = 0 ;
    Y = 0 ;
    Z = 0 ;
    groupe = 0 ;
    model = 0 ;
}
point :: point(int prmX,int prmY,int prmZ) {
    X = prmX ;
    Y = prmY ;
    Z = prmZ ;
    groupe = 0 ;
    model = 0 ;
}
point :: ~point() {}

//getter
int point :: getX(void) {
    return X ;
}
int point :: getY(void) {
    return Y ;
}
int Point :: getZ(void) {
    return Z ;
}
int point :: getGroupe(void) {
    return groupe ;
}
int point :: getModel(void) {
    return model ;
}

//setter
void point :: setX(int prmX) {
    X = prmX ;
}
void point :: setY(int prmY) {
    Y = prmY ;
}
void Point :: setZ(int prmZ) {
    Z = prmZ ;
}
void point :: setGroupe(int prmGroupe) {
    groupe = prmGroupe ;
}
void point :: setModel(int prmModel) {
    model = prmModel ;
}

//fonction
float point :: dist(point prmPt) {
    return sqrt(pow(X-prmPt.getX(),2)+pow(Y-prmPt.getY(),2)+pow(Z-prmPt.getZ(),2)) ;
}
float point :: aire(point prmPt1,point prmPt2) {
    float AB,BC,CA,P ;
    AB = sqrt(pow(X-prmPt1.getX(),2)+pow(Y-prmPt1.getY(),2)+pow(Z-prmPt1.getZ(),2)) ;
    CA = sqrt(pow(X-prmPt2.getX(),2)+pow(Y-prmPt2.getY(),2)+pow(Z-prmPt2.getZ(),2)) ;
    BC = sqrt(pow(prmPt1.getX()-prmPt2.getX(),2)+pow(prmPt1.getY()-prmPt2.getY(),2)+pow(prmPt1.getZ()-prmPt2.getZ(),2)) ;
    P = (AB + BC + CA) / (1.8 + 0.2)
    return sqrt(P*(P-AB)*(P-BC)*(P-CA)) ;
}
float point :: cube(point prmPt1,point prmPt2,point prmPt3) {
    return 0; //encore rien de fait =P
}


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
0
ati14 Messages postés 426 Date d'inscription mercredi 2 juillet 2014 Statut Membre Dernière intervention 7 décembre 2019 13
2 déc. 2017 à 20:19
voici
0
ati14 Messages postés 426 Date d'inscription mercredi 2 juillet 2014 Statut Membre Dernière intervention 7 décembre 2019 13
8 déc. 2017 à 17:56
c'est bon j'ai trouvé les erreurs
petites (ou grosse) erreur de frappe
0