Accueil > Forum > > > > Pile en C#
Pile en C#
lundi 21 février 2005 à 14:22:54 |
Pile en C#

ntrvdonett
|
Bonjour,
Pour me faire un peu mal, j'ai décidé de réecrire la gestion des piles en C#, bien qu'il existe une classe pour ça. Je suis confronté au problème suivant :
public void Empile (int val) { Spile* tempo = stackalloc Spile[1];
//Spile tempo = new Spile(); Console.WriteLine ("@ tempo : {0}",(int)tempo); tempo->valeur = val; if (debut == null) tempo->suivant = null; else tempo->suivant = debut; debut = tempo; GC.KeepAlive (*tempo); }
Malgrés mes précautions, mon objet tempo est considéré comme temporaire. A chaque fois que j'entre dans ma fonction Empile, le system me réaloue le même bloc mémoire ! Il ne me reste plus que trois cheveux sur la tête, ayez pitié d'eux, aidez moi.
|
|
lundi 21 février 2005 à 21:19:30 |
Re : Pile en C#

Bidou
|
C'est vrai que c'est pas vraiment utile de créer quelque chose qui existe déjà au sein du Framework, et qui marche très bien d'ailleurs... De plus, je ne vois pas pourquoi tu t'obstines à utiliser des pointeurs : les pointeurs c'est cool, mais en C# on préfère ne pas les utiliser : C'est pas pris en compte par le CLR et en plus, dans 99% des cas, ça n'amène absolument rien de plus. Si tu tiens vraiment à refaire un sytème de Stack FIFO ou LIFO, prend un ArrayList et ajoute quelques méthodes utiles pour faire des pop,des push et autre action utile!  [Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub] C# forever 
|
|
mercredi 23 février 2005 à 09:31:45 |
Re : Pile en C#

spaceclic
|
Ton système de liste chainée me parait bien, parcontre il faut que tu retournes la référence de l'object alloué dynamiquement.
|
|
mercredi 23 février 2005 à 10:24:57 |
Re : Pile en C#

ntrvdonett
|
Merci pour vos reponses:
Bidou : L'interet de l'allocation dynamique est d'éviter de consommer de la mémoire pour rien, c'est pourquoi je n'adopte pas la solution du tableau. Si je me casse la tête avec ça, c'est juste pour le fun, je pense qu'en essayant de faire ce qui existe déjà, on apprend beaucoup.
SpaceClic : Dans le corp de ma classe il existe un pointeur global qui permet d'avoir un lien avec l'allocation dynamique. Il s'appel Debut dans le bout de code que j'ai envoyé.
J'ai trouvé la solution au problème et je mettrai prochainement le code sur le site, si ça vous interesse.
|
|
mercredi 23 février 2005 à 18:35:17 |
Re : Pile en C#

Bidou
|
Consommer de la mémoire pour rien.... pffarf ! Arrêtes voire ! Actuellement les compilateurs sont tellement bons, et les objets "pré-fabriqués" que nous offre le framework tellement optimisés que c'est vraiment parfaitement inutile de faire ce que tu veux. De plus, si les pointeurs te rendent fou de joie, programme plutôt en C/C++ mais pas en C#, je crois que tu t'es tout simplement trompé de langage...  [Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub] C# forever 
|
|
dimanche 1 mai 2005 à 00:50:14 |
Re : Pile en C#

RM50Man
|
i doit falloir utiliser fixed!!! regarde ds la msdn library!!!
RM50man
|
|
lundi 2 mai 2005 à 08:22:21 |
Re : Pile en C#

ntrvdonett
|
Réponse acceptée !
Hélas non, il ne suffit pas d'utiliser "fixed", tu penses bien que j'ai déjà essayé !!! Il faut utiliser une classe qui accede directement au systeme (je ne me souviens déjà plus du nom, il y a déjà 2 mois tu me diras)
|
|
Cette discussion est classée dans : tempo, debut, pile, spile, empile
Répondre à ce message
Sujets en rapport avec ce message
Pile FIFO [ par LuckyLuck ]
C'était simplement pour savoir s'il existe une librairie system( ou autre) en C# qui crée une pile FIFO, ou si je dois programmer une classe qui en si
Dur dur les debut en C# [ par chris81 ]
bonjour, je viens de me mettre au C# et ben ca change la vie, pour le moment pas dans le bon sensj'ai l'habitude de vb.net alors quand je tape textbox
Type global pour int[], string[], bool[] ..... [ par ricklekebekoi ]
Hello,Mon problème va comme suit:Dans mon programme, jutilise différentes array de différents types (des bool[], des int[], des string[] ...)Je me sui
Pile de message [ par taoetc ]
Bonjour, j'aimerais savoir comment vider les piles de messages qu'il peut exister. Je connais le application.Doevents(); qui permet de traiter les mes
dessiner cercle c# [ par Moucave ]
Bonjour, Voici mon probleme.J'aimerai dessinner un cercle dans une picturebox au dessus d'une image (image deja chargee dans la picture box avant de
code + combobox [ par paloxicide ]
Bonjour,dans mon code je crée une boucle pour récupérer les infos à mettre dans mon comboboxDonc je commence comme castring debut = "this.comboBox1.It
DateTime [ par emmanuel9 ]
Bonjour à tous, Quelqun aurait t'il une méthode pour obtenir la date du debut du mois en cours et la date de fin du mois en cours, genre pour ce moi
streamwriter + debut de fichier .txt [ par jimmy69 ]
bonjour a tous,j'ai une application console qui ne fait que d'enregistrer des valeurs dans un fichier .txtles informations sont enregistres les unes a
Problème de adte [ par emmanuel9 ]
Bonjour à tous, J'ai deux datetime Date_debut et Date_finet je voudrais que la période ainsi créer soit cohérante c'est à dire que le dateTime date_de
probleme d'execution [ par cudenetf ]
bonjour,je suis assez novice en c# et je rencontrre quelsques problemes a l'execution de mon programme.Il me semble qu'il fonctionnait normalement (=
Livres en rapport
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|