[VC2005] Comment caster correctement ?
Bonsoir,
dans le fichier cpp de mon application , j'ai :
Code:
1 2 3 4 5 6
|
BEGIN_MESSAGE_MAP(CGavrocheApp, CWinApp)
ON_COMMAND(ID_TM_SAUVEGARDER_TRJ, &GavrocheApp::SauvegarderTrajectoireManuelleTRJ)
END_MESSAGE_MAP() |
pour répondre à un clic dans un menu.
dans l'entête, j'ai déclaré comme ça
Code:
1 2
|
afx_msg bool SauvegarderTrajectoireManuelleTRJ(); |
ça passait en VC6, ça passe pour une autre fonction située deux lignes plus haut, et là j'ai l'erreur :
Citation:
error C2440: 'static_cast' : cannot convert from 'bool (__thiscall CGavrocheApp::* )(void)' to 'AFX_PMSG'
Cast from base to derived requires dynamic_cast or static_cast
j'ai tenté ça :
Code:
1 2 3 4 5 6
|
BEGIN_MESSAGE_MAP(CGavrocheApp, CWinApp)
ON_COMMAND(ID_TM_SAUVEGARDER_TRJ, static_cast<bool>(&CGavrocheApp::SauvegarderTrajectoireManuelleTRJ) )
END_MESSAGE_MAP() |
ou ça
Code:
1 2 3 4 5 6
|
BEGIN_MESSAGE_MAP(CGavrocheApp, CWinApp)
ON_COMMAND(ID_TM_SAUVEGARDER_TRJ, static_cast<AFX_PMSG>(&CGavrocheApp::SauvegarderTrajectoireManuelleTRJ) )
END_MESSAGE_MAP() |
mais rien n'y fait :(
comment lui plaire ...
Philippe