Bonjour,
Lorsque je compile le code suivant avec Visual Studio, j'obtiens le message d'erreur :
'static_cast' : la conversion de 'FileDataSource *' en 'DataSource *' existe, mais n'est pas accessible.
FileDataSource et SQLDataSource héritent bien de DataSource!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 DataSource* ds; if (strcmp(type,"sql") == 0) ds = static_cast<DataSource*>(new SQLDataSource(".\\global.ini")); else ds = static_cast<DataSource*>(new FileDataSource(".\\global.ini"));
Avec un dynamic_cast, ça plante à l'exécution. C'est cohérent mais je ne comprends pas cette notion d'accessibilité.
Merci d'avance
Partager