IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

problème compilation programme après l'ajout d'une fonction (je ne sais pas le problème)


Sujet :

C++

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 38
    Points : 31
    Points
    31
    Par défaut problème compilation programme après l'ajout d'une fonction (je ne sais pas le problème)
    voici mon code :

    ma fonction
    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
     
    CBitMap* seuillage(unsigned int SeuilValeurMin, unsigned int SeuilValeurMax)
    {
    	CBitMap *d = new CBitMap(d->getLargeur() ,d->getHauteur());
    	for (unsigned int y = 0 ; y < d->getHauteur() ; y++)
    	{
    		for (unsigned int x = 0 ; x < d->getLargeur() ; x++)
    		{
    			if((d->getGrayPixel(x,y) < SeuilValeurMin) && (d->getGrayPixel(x,y) > SeuilValeurMax))
    				d->setGrayPixel(x,y,0);
    			else
    				d->setGrayPixel(x,y,255);
    		}
    	}
    	return d;
    }
    sa déclaration :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    CBitMap* seuillage(unsigned int SeuilValeurMin, unsigned int SeuilValeurMax);
    et là où je l'utilise

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    imageCible = imageSource->seuillage(SeuilValeurMin,SeuilValeurMax);
    et donc voilà je peux expliquer mon problème j'ai une erreur lors de la copilation du programme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    1>wMain.obj : error LNK2019: unresolved external symbol "public: class CBitMap * __thiscall CBitMap::seuillage(unsigned int,unsigned int)" (?seuillage@CBitMap@@QAEPAV1@II@Z) referenced in function _WinMain@16
    impossible de la faire disparaitre, je n'ai pas réussi, j'ai tournée la fonction dans tout les sens et ce n'est pas la 1ère fois que j'utilise une fonction

    le nommage est bon
    le prototype est le bon
    et l'appel aussi

    voyer vous où est l'erreur?

  2. #2
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 136
    Points
    23 136
    Par défaut
    Si j'ai bien compris tu as une classe nommée CBitMap et avec ta fonction, tu retourne un pointeur sur une occurrence de cette classe?
    (je ne comprend pas tout à fait le message d'erreur)

    CBitMap est-il défini par une librairie que tu utilise ou est-ce toi qui l'a défini?

    essaye de remplacer le pointeur sur un CBitMap par un pointeur void et regarde si ça marche.
    (bien sûr pour l'appel, il faudra mettre (CBitMap *) avant)

    Ou je dis peut être une bêtise, la fonction seuillage est peut être une fonction définie par une de tes bibliothèque essaye de changer le nom.

    Sinon, je ne vois vraiment pas.

  3. #3
    Membre expert
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1 415
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 415
    Points : 3 159
    Points
    3 159
    Par défaut
    Oui, tu t'es trompé dans l'implémentation de la méthode. Tu dois écrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CBitMap* CBitMap::seuillage(unsigned int SeuilValeurMin, unsigned int SeuilValeurMax)
    {
    	// Ton code
    }

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 38
    Points : 31
    Points
    31
    Par défaut réponse
    oui merci beaucoup c'était ça en plus j'avias plein d'exemple sous les yeux mais à force de codé ben on ne voit plus du tout les erreurs lol

    bonne soirée et meilleurs voeux

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 01/03/2008, 10h07
  2. Problème compilation programme
    Par leon_2 dans le forum Delphi
    Réponses: 5
    Dernier message: 25/07/2007, 16h36
  3. Réponses: 2
    Dernier message: 25/04/2007, 17h44
  4. problème de zero apres la virgule dans une table
    Par mosca_coroneja dans le forum Outils
    Réponses: 11
    Dernier message: 08/04/2006, 21h57
  5. Problème de retour aprés l'appel d'une popup
    Par PADAWANN33 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 06/02/2006, 15h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo