A propos des LinkedList() dans les UserLib.

Sujets variés concernant le développement en PureBasic
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

A propos des LinkedList() dans les UserLib.

Message par Chris »

Personne n'a encore trouvé un moyen d'utiliser une LinkedList() créée par la lib dans le programme principal?

J'ai essayé avec des pointeurs, mais franchement, je suis largué :x
Avatar de l’utilisateur
Crystal Noir
Messages : 892
Inscription : mar. 27/janv./2004 10:07

Message par Crystal Noir »

je sais qu'avec tailbite, suffit de créer la structure dans le prog annexe (procedure) puis de créer les procédure de création de linkedlist et ca marche.
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

Crystal Noir a écrit :je sais qu'avec tailbite, suffit de créer la structure dans le prog annexe (procedure) puis de créer les procédure de création de linkedlist et ca marche.
J'ai rien compris :lol:

T'as pas un exemple?
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message par Anonyme2 »

Oui, moi aussi je capte rien

Un bon exemple :!:
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

Sur TailBite, pour utiliser une LinkedList, il faut la mettre dans la procedure *_Init()

cette procedure est lancé dès qu'on se sert d'une fonction de la lib au début du programme.

Code : Tout sélectionner

ProcedureDLL Machin_Init()

  NewList Truc.l()

EndProcedure
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Avatar de l’utilisateur
Crystal Noir
Messages : 892
Inscription : mar. 27/janv./2004 10:07

Message par Crystal Noir »

vala et après si par exemple vous voulez utiliser les Nextelement() pour faire un NextElement pareil on fait une procédure de la forme :

Procedure ElementSuivant()
ProcedureReturn NextElement()
EndProcedure

un truc du genre
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message par Anonyme2 »

Je me trompe peut-être mais j'aimerais un exemple qui marche...

La procédure qui commence par Init parmet d'initialiser un certain nombre de variables, liste chainées, mémoire, objects etc pour l'ensemble de la librairie mais cela reste pour la librairie.

Je continue à dire que ce n'est pas accessible directement depuis PB.

La solution reste le passage par pointeur.
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

pour avoir accès à la lib depuis PB ?

oula, oui, il faut les pointeurs

déjà, il faut le truc de crystal ci-dessus

ensuite, il faut une fonction qui renvoie le pointeur

Code : Tout sélectionner

ProcedureDLL.l Liste()
  ProcedureReturn @truc()
Endprocedure
et dans le code du programme

Code : Tout sélectionner

*ElementListe = Liste()
pour pouvoir utiliser la liste chainée
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Répondre