Salut tout le monde,
J'aimerais pouvoir depuis des modules écrits en C pouvoir accéder à des modules écrit en C++.
Pour cela, j'ai écrit une série de fonctions pour instancier/détruire une classe et pour accéder à chaques fonctions membres de l'objet.
Cette série de fonctions seront appelés par des fonctions C.
Voici les extraits des fichiers
La compilation se fait bien.
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
17
18
19
20
21
22
23
24
25
26
27
28
29 // fichier MyExcelForC.h //------------------------------ typedef void* POMYEXEL; BOOL g_bMyExcel_Run(POMYEXEL pvMyExcel); // fichier MyExcelForC.cpp //--------------------------------- BOOL g_bMyExcel_Run(POMYEXEL pvMyExcel) { MyExcel* poMyExcel = reinterpret_cast<MyExcel*>(pvMyExcel); bool bResult = poMyExcel->RunExcel(); TRACE_OUT(); return bResult ? TRUE : FALSE; } // fichier test.c //----------------- #include "MyExcelForC.h" void test(void) { ... g_bMyExcel_Run(pvMyExcel); ... }
Mais lors de l'édition de lien, la fonction g_bMyExcel_Run n'est pas trouvée.
Environnement de développement VC++ version 6
sauf erreur avec gcc il existe extern "CPP", que faire dans le cas de VC++
Merci d'avance
Philippe
Partager