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 :

Traduire VBFixedArray en C#


Sujet :

C#

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 488
    Points : 397
    Points
    397
    Par défaut Traduire VBFixedArray en C#
    Bonjour,

    J'ai ce morceau de code en VB.Net :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Structure PASSCTRLTIME
            <VBFixedArray(MAX_PASSCTRL_COUNT - 1)> Dim mPassCtrlTime() As PASSTIME
     
            Public Sub Initialize()
                ReDim mPassCtrlTime(MAX_PASSCTRL_COUNT - 1)
                Dim vnii As Integer
     
                For vnii = 0 To MAX_PASSCTRL_COUNT - 1
                    mPassCtrlTime(vnii).Initialize()
                Next
            End Sub
        End Structure
    Je voudrais le traduire en C# pour l'intégrer dans mon application, mais je ne sais pas faire, et les outils de traduction automatique me donnent tous un code qui ne compile pas, le problème se situant au niveau du VBFixedArray.

    Quelqu'un saurait comment s'en sortir ?
    Merci.

  2. #2
    Membre expérimenté Avatar de ctxnop
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2007
    Messages : 858
    Points : 1 732
    Points
    1 732
    Par défaut
    Salut.
    Cet attribut n'existe qu'en VB.
    Le truc qui se rapproche le plus de ce que tu sembles chercher à faire est
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    public fixed PASSTIME mPassCtrlTime[MAX_PASSCTRL_COUNT - 1];
    Je ne suis pas certain que le C# accepte la définition de la taille via un calcul même si celui-ci est constant. Auquel cas, remplace le calcul par la taille réelle finale.
    Cette syntaxe demande le C# 2.0 ou plus (donc .Net 2.0 ou plus) et imposera peut être (je ne me rappel plus) d'être dans un bloc unsafe.

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

    Informations forums :
    Inscription : Novembre 2004
    Messages : 488
    Points : 397
    Points
    397
    Par défaut
    Merci pour la réponse, en me documentant sur le fixed je suis tombé sur cette page : http://www.developerfusion.com/artic...-structs-in-c/

    Du coup j'ai opté pour cette traduction :
    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
     
            public struct PassCtrlTime
            {
                public const short Count = 7;
                [MarshalAs(UnmanagedType.ByValArray, SizeConst = Count - 1)]
                public PassTime[] mPassCtrlTime;
     
                public void Initialize()
                {
                    for (int i = 0; i <= Count - 1; i++)
                    {
                        mPassCtrlTime[i].Initialize();
                    }
                }
            }
    Est-ce correct par rapport au source original ? J'ai notamment des doutes pour la boucle d'initialisation qui va de 0 à Count - 1 inclus.

Discussions similaires

  1. [LG]traduire ReDim de VB
    Par James64 dans le forum Langage
    Réponses: 5
    Dernier message: 26/03/2004, 14h26
  2. [Entité-Association] Traduire l'héritage conceptuel en script BDD
    Par MrEddy dans le forum Schéma
    Réponses: 2
    Dernier message: 16/03/2004, 16h18
  3. [merise]traduire en sql une association réflexive
    Par omega dans le forum Langage SQL
    Réponses: 2
    Dernier message: 11/03/2004, 19h10
  4. Traduire du DSP pour ADSP2181 de Analog Devices en C
    Par Aramis dans le forum Autres architectures
    Réponses: 4
    Dernier message: 14/06/2002, 13h03

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