Je doit utiliser une bibliothèque dynamique (sous Unixoïde), j'emploi pour cela les fonction POSIX dlopen, dlsym et dlclose mais je me demandais, y'a pas d'autres technique que ca :
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
      size_t i = 0;
      C_List * (* fn_new) (void);
      void (* fn_free) (C_List ** list);
      C_List_err (* fn_append) (C_List * list, void * data);
      void * handle = dlopen ("libclist.so", RTLD_LAZY);
 
 
      if (handle != NULL)
      {
         fn_new = dlsym (handle, "C_List_new");
         list = fn_new ();
 
         if (list != NULL)
         {
            fn_append = dlsym (handle, "C_List_append");
 
            for (i = 0; i < nblines; i++)
            {
               fn_append
            }
         }
 
         fn_free = dlsym (handle, "C_List_free");
         fn_free (&list);
         dlclose (handle);
... Faire des pointeur de fonctions à outrance, récupérer des fonctions à coup de dlsym ? Bien sûr je ne dois pas utiliser des bibliothèque externe sinon ca sert à rien, c'est dans le cadre d'un petit ensemble de bibliothèques perso qui serviront plus tard dans un plus gros projet, il faut donc que je maîtrise ce côté "dynamique".

Donc ma question est... y'a rien de plus propre ?