lib:swig
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| lib:swig [2018/03/24 23:17] – Création root | lib:swig [2022/09/13 10:04] (Version actuelle) – Ajout des sites web root | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | Fichier '' | + | [[https:// |
| + | ====Utilisation de base==== | ||
| <file raw libmod.i> | <file raw libmod.i> | ||
| // Nom de la librairie de sortie | // Nom de la librairie de sortie | ||
| Ligne 18: | Ligne 19: | ||
| </ | </ | ||
| + | ====template==== | ||
| Pour les '' | Pour les '' | ||
| Ligne 36: | Ligne 38: | ||
| %include " | %include " | ||
| </ | </ | ||
| + | |||
| + | ====Can' | ||
| + | C'est le cas des opérateurs '' | ||
| + | %rename(operator_not_equal) operator!=; | ||
| + | |||
| + | ====Multiple inheritance is not supported in==== | ||
| + | Ajouter après '' | ||
| + | %include < | ||
| + | |||
| + | Soit la ClasseA | ||
| + | <code cpp> | ||
| + | class ClassA : public Number, public Base< | ||
| + | </ | ||
| + | |||
| + | Ajouter: | ||
| + | %interface_impl(Number); | ||
| + | %include " | ||
| + | %interface_impl(Base); | ||
| + | %include " | ||
| + | %rename(base_int_ren) Base< | ||
| + | %template(base_int) Base< | ||
| + | |||
| + | <WRAP center round info 60%> | ||
| + | Je n'ai pas testé mais je conseille de mettre un nom différent lors du '' | ||
| + | </ | ||
| + | |||
| + | Si '' | ||
| + | |||
| + | <WRAP center round alert 60%> | ||
| + | Par contre, il y a un soucis si une classe avec template doit être déclarée en interface : | ||
| + | <code raw> | ||
| + | %interface_impl(InterfaceVisitable); | ||
| + | // Nécessaire car swiginterface.i fait NomDeLaClasseAvecTemplateImplSwigImpl. | ||
| + | // InterfaceVisitable< | ||
| + | %rename(interface_visitable_number_ren) InterfaceVisitable< | ||
| + | // Mais lors de la déclaration du %template, c'est l' | ||
| + | %template(interface_visitable_number) InterfaceVisitable< | ||
| + | </ | ||
| + | J'ai le résultat : | ||
| + | Error: The interface feature name ' | ||
| + | </ | ||
lib/swig.1521929846.txt.gz · Dernière modification : de root
