Posez votre question Signaler

[C++] Build Error ! [Résolu/Fermé]

myrkhaoula 1005Messages postés 30 mars 2007Date d'inscription - Dernière réponse le 6 avril 2008 à 14:33
Bonjour,
Je voudrais créer 3 types de constructeurs dans mon programme, mais le programme ne s’exécute pas. On m’affiche ces deux erreurs que je vois pour la première fois :
1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall Notes::~Notes(void)" (??1Notes@@QAE@XZ) referenced in function _main
1>C:\Documents and Settings\khaoula\Mes documents\Visual Studio 2005\Projects\ex1tp3\Debug\ex1tp3.exe : fatal error LNK1120: 1 unresolved externals
1>Build log was saved at "file://c:\Documents and Settings\khaoula\Mes documents\Visual Studio 2005\Projects\ex1tp3\ex1tp3\Debug\BuildLog.htm"
1>ex1tp3 - 2 error(s), 0 warning(s)
Voici les fichiers que j’ai créés :
notes.h :
#include<iostream>

class Notes
{
private :
	float test1, test2;
	float DS, Examen;
	float orale, TP;
	bool avecTP;
public :
	Notes():test1(0), test2(0), DS(0), Examen(0), orale(0), TP(0), avecTP(true){}
	Notes(float t1, float t2, float d, float E, float o, float tp):test1(t1), test2(t2), DS(d), Examen(E), orale(o), TP(tp), avecTP(true){}
	Notes(float t1, float t2, float d, float E, float o):test1(t1), test2(t2), DS(d), Examen(E), orale(o), avecTP(false){}
	float CalculNCC();
	float CalculMoyenne();
	~Notes();
};

notes.cpp :
#include"notes.h"

float Notes::CalculNCC()
{
	return (test1+test2+orale+2*DS)/5;
}
float Notes::CalculMoyenne()
{
	if(avecTP)
	    return (0.3 * CalculNCC()) + (0.3 * TP)+(0.4 * Examen);
	else
		return (0.4 * CalculNCC()) + (0.6 * Examen);
};

main.cpp :
#include"notes.h"
using namespace std;

void main()
{
	Notes N1(10, 12, 15, 11, 17, 9.5);
	Notes N2(11.5, 13, 18, 10, 12.5);
	cout<<"NCC1 = "<<N1.CalculNCC()<<"M1 = "<<N1.CalculMoyenne()<<endl;
    cout<<"NCC2 = "<<N2.CalculNCC()<<"M2 = "<<N2.CalculMoyenne()<<endl;

	if(N1.CalculMoyenne() > N2.CalculMoyenne())
		cout<<"M1 est plus grand";
	else
		cout<<"M2 est plus grand";
}

Merci de vos réponses :)
Lire la suite 

[C++] Build Error »

2 réponses
Réponse
+0
moins plus
Salut!
Hum t'aurais pas oublié les ( ) derière class Notes ?? Si c'est une fonction c'est forcement suivi d'une parenthèse avec (void) sii ta fonction main ne reçoit rien.
(et d'une parenthèse avec dedans une déclaration de variable du type de la valeur que ta fonction note renvoie).
Sinon je sais pas, ta tenté de voir les liens correspondant a l'erreur que t'as ou de te servir de l'aide de visual c++?

Réponse
+0
moins plus
#include <stdlib.h>
#include <stdio.h>
#include <SDL/SDL.h>

int main(int argc, char *argv[])
{
if (SDL_Init(SDL_INIT_VIDEO) == -1) // Démarrage de la SDL. Si erreur alors...
{
fprintf(stderr, "Erreur d'initialisation de la SDL : %s\n", SDL_GetError()); // Ecriture de l'erreur
exit(EXIT_FAILURE); // On quitte le programme
}


SDL_Quit();

return EXIT_SUCCESS;
}


[Linker error] undefined reference to `SDL_Init'

[Linker error] undefined reference to `SDL_GetError'

[Linker error] undefined reference to `SDL_Quit'

[Linker error] undefined reference to `WinMain@16'

ld returned 1 exit status

C:\Dev-Cpp\Makefile.win [Build Error] [Projet1.exe] Error 1

Ce document intitulé « [C++] Build Error ! » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Windows 8 - À quoi s'attendre ?