[Aide] error LNK2001: symbole externe non résolu "struct Menu_t * menu" (?menu@@3PAUMenu_t@@A)
Bonjour,
J'ai un soucis quand je compile mon projet sous Visual Studio, le compilateur me retourne les erreurs :
Citation:
d3d9.obj : error LNK2001: symbole externe non résolu "struct Menu_t * menu" (?menu@@3PAUMenu_t@@A)
main.obj : error LNK2001: symbole externe non résolu "struct Menu_t * menu" (?menu@@3PAUMenu_t@@A)
Dans mon fichier, j'essaye de créer une structure servant de menu, et a la fin du fichier je crée un pointeur extern sur cette structure.
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 40 41 42 43 44 45 46 47 48
|
#ifndef HMENU_H
#define HMENU_H
struct MenuItem_t
{
int itemType;
int itemState;
LPSTR itemTitle;
MenuItem_t() {}
MenuItem_t(char *title, int type, int state)
{
//strcpy(itemTitle, title);
itemTitle = title;
itemType = type;
itemState = state;
}
};
struct Menu_t
{
bool isShown;
int itemNumber;
int selectedItem;
MenuItem_t *menuItem;
Menu_t() {}
Menu_t(bool menuShown, const int numOfItems, char itemTitles[][32], int itemTypes[], int itemStates[])
{
isShown = menuShown;
itemNumber = numOfItems;
menuItem = new MenuItem_t[itemNumber];
for (int i = 0; i < itemNumber; i++)
{
menuItem[i] = MenuItem_t(itemTitles[i], itemTypes[i], itemStates[i]);
}
}
};
//Menu_t *menu;
extern Menu_t *menu;
#endif |
Si quelqu'un connait la raison de cette erreur, je suis preneur ;)
EDIT : Problème résolu :D, enfaite je n'avais pas bien compris l'utilisation de "extern" et je n'avais pas mis de déclaration de "Menu_t *menu" dans mon code.