Problème de compilation : référence non définie
bonjour,
mon probleme est le suivant :
j'ai creé une classe qui permet de creer une fenetre
voici le code
Code:
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
|
#ifndef _FAJOUTER_H
#define _FAJOUTER_H
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <gtk/gtk.h>
// LA CLASSE F_AJOUTER
class F_Ajouter
{
public :
// LES TRAITEMENTS
F_Ajouter();
~F_Ajouter();
void afficherFAjouter();
void effacerFAjouter();
void validerFAjouter();
private :
GtkWidget * windowAjouter; // DECLARATION DE LA FENETRE
GtkWidget * Layout; // DECLARATION DE LAYOUT
GtkWidget * Label[3]; // DECLARATION DES LABELS
GtkWidget * button[2]; // DECLARATION DES BUTTONS
GtkWidget * entry[2]; // DECLARATION DES ZONES DE SAISI
};
#endif |
j'ai ecri ma fonction main() la fonction main contient un element de menu qui permet de generer un signal :
dont voici le code :
Code:
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 34 35 36 37 38 39
| #include "F_Ajouter.h"
#include "article.h"
#include "F_Modifier.h"
#include "F_Supprimer.h"
#include <stdlib.h>
#include <iostream>
#include <gtk/gtk.h>
using namespace std;
void Quitter(GtkWidget * widget, gpointer data);
void Aider(GtkWidget * widget, gpointer data);
void Ajouter(GtkWidget * widget, gpointer data);
void Modifier(GtkWidget *widget, gpointer data);
void Lister(GtkWidget *widget, gpointer data);
void Supprimer(GtkWidget *widget, gpointer data);
void SeConnecter(GtkWidget *widget, gpointer data);
int main(int argc, char **argv)
{
..................
// $$$$$$$$$$$ sous menu Gestion Article $$$$$$$$$$$$$//
Menu=gtk_menu_new();
MenuItem=gtk_menu_item_new_with_mnemonic(" _Ajouter ");
gtk_menu_shell_append(GTK_MENU_SHELL(Menu),MenuItem);
g_signal_connect(G_OBJECT(MenuItem),"activate",G_CALLBACK(Ajouter),NULL);
...................
gtk_widget_show_all(F_Acceuil);
gtk_main();
return EXIT_SUCCESS;
} |
la fonction de rappel est la suivante :
Code:
1 2 3 4 5 6 7
| void Ajouter(GtkWidget * widget, gpointer data)
{
F_Ajouter win;
// win=new F_Ajouter();
// winAj.F_Ajouter();
} |
il m'affiche l'erreur suivante
Code:
1 2 3 4
| [Linker error] undefined reference to `F_Ajouter::F_Ajouter()'
[Linker error] undefined reference to `F_Ajouter::~F_Ajouter()'
ld returned 1 exit status
C:\Documents and Settings\pc\Bureau\Article\Makefile.win [Build Error] [Article.exe] Error 1 |
merci de signaler la source d'erreur.??
je suis un debutant:roll::roll: