IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Manipulation de tableaux & pointeurs (C++ ?)


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut Manipulation de tableaux & pointeurs (C++ ?)
    Hello,

    Je dois travailler dans le cadre d'une prestation sur un projet de bibliothèque manipulant des NURBS. Le client aimerait que cela soit fait en C#, parce qu'ils utilisent ce langage en interne.

    Mais je dois travailler avec des fichiers d'entrée ASCII qui expriment différemment sous formes d'énormes tableaux les données géométriques. Je dois donc réorganiser ces données, mais je me demande si C# est très efficace pour ce genre de travail. EN C++, j'aurais fort probablement utilisé de l'arithmétique de pointeurs.

    En outre, les bibliothèques 3D sont en général en C++, et je me dis que C# n'est peut-être pas la meilleure solution pour travailler sur ces domaines. Qu'en pensez-vous ?

  2. #2
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    En C# c'est tout a fait possible de travailler avec des pointeurs mais ce n'est cependant utilisé que dans des cas très rare.
    Que dois tu faire exactement qui ne te semble pas faisable sans pointeur?

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Citation Envoyé par Nathanael Marchand Voir le message
    En C# c'est tout a fait possible de travailler avec des pointeurs mais ce n'est cependant utilisé que dans des cas très rare.
    Que dois tu faire exactement qui ne te semble pas faisable sans pointeur?
    C'est tout à fait faisable sans pointeurs.
    Mais je crains que cela soit peu efficaces.

    J'ai une surface NURBS carrée qui est décrite de deux façons différentes dans deux formats de fichiers.

    Dans l'un, les coordonnées XYZ de tous les sommets sont indiquées à la suite; ensuite les dérivées partielles au bord; ensuite les dérivées mixtes aux coins.

    Dans l'autre format, il y a les coordonnées de sommet pour une rangée, suivies par les dérivées partielles, suivies par les dérivées mixtes aux coins.

    Il faut que j'unifie tout ça dans une seule structure de données. Ça implique de manipuler des tableaux de centaines ou milliers d'éléments. Je ne suis pas sûr que passer par des objets tableau soit le plus efficace...

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par oodini Voir le message
    Il faut que j'unifie tout ça dans une seule structure de données. Ça implique de manipuler des tableaux de centaines ou milliers d'éléments. Je ne suis pas sûr que passer par des objets tableau soit le plus efficace...
    Manipuler des pointeurs en C# risque de ne pas être efficace, car si le langage le permet sous certaines conditions, il n'est pas conçu pour cela. Au final, ton code ne sera certainement pas plus rapide qu'avec des List (au sens large) et beaucoup moins maintenable.

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Dans [ame="http://www.amazon.fr/C-NET-G%C3%A9rard-Leblanc/dp/2212110669/ref=sr_1_3?s=books&ie=UTF8&qid=1303999360&sr=1-3"]C # et .NET: Amazon.fr: G?rard Leblanc: Livres@@AMEPARAM@@http://ecx.images-amazon.com/images/I/4165BGEMN6L.@@AMEPARAM@@4165BGEMN6L[/ame], pour illustrer les pointeurs, l'auteur présente une application qui lit/écrit des pixels. En utilisant les pointeurs plutôt que Get/SetPixel, il va des dizaines de fois plus vite...

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par oodini Voir le message
    . En utilisant les pointeurs plutôt que Get/SetPixel, il va des dizaines de fois plus vite...
    Oui, par ce qu'il travaille sur une zone de mémoire non managée.
    Mais si tu comptes faire cela, tu dois t'interroger sur la pertinence de l'utilisation de C#

  7. #7
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par oodini Voir le message
    des NURBS


    C'est quoi et ça mange quoi l'hiver ces bêtes là ?

  8. #8
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Citation Envoyé par Bluedeep Voir le message
    Expert Confirmé Sénior
    Chef de projet NTIC



    C'est quoi et ça mange quoi l'hiver ces bêtes là ?
    C'est en voyant des seniors poser de telles questions qu'on se rend compte que bien qu'on soit tous codeurs, nos domaines d'expertise peuvent être très différents. :-)

    NURBS signifie Non-Uniform Rational B-Spline. C'est une représentation mathématique décrivant une géométrie.

  9. #9
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par oodini Voir le message
    NURBS signifie Non-Uniform Rational B-Spline. C'est une représentation mathématique décrivant une géométrie.
    Merci !

    EDIT : et pour ceux qui se sont posés la même question, voici l'article de wikipedia sur la question : http://fr.wikipedia.org/wiki/NURBS

    L'explication est très claire.

Discussions similaires

  1. Problème avec les tableaux de pointeurs
    Par TheDoci dans le forum C
    Réponses: 2
    Dernier message: 07/01/2007, 13h04
  2. allocation dynamique et tableaux de pointeurs
    Par gbardy dans le forum 4D
    Réponses: 3
    Dernier message: 06/07/2006, 11h08
  3. Manipulation de tableaux de tableaux
    Par vargasvan dans le forum Langage
    Réponses: 2
    Dernier message: 26/04/2006, 13h54
  4. [Tableaux] Manipulation de tableaux
    Par orus8 dans le forum Langage
    Réponses: 3
    Dernier message: 04/10/2005, 15h10
  5. en COM Tableaux de pointeurs d'interface:
    Par Barahn dans le forum MFC
    Réponses: 11
    Dernier message: 30/09/2005, 16h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo