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

Entrée/Sortie Java Discussion :

JNI : allocation de tableau


Sujet :

Entrée/Sortie Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 18
    Par défaut JNI : allocation de tableau
    Bonjour à tous,

    Je dois allouer et remplir "côté" C++ un tableau passé à null en paramètre d'une méthode JNI.
    exemple simplifié :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    JNIEXPORT void JNICALL getIds(JNIEnv *env, jclass, jintArray ids) 
    {
    int* tmpids = new int[nb];
    env->NewIntArray(nb);
    for(int i = 0 ; i < nb ; i++)
    {
       // remplissage du tableau
    }
     
    env->SetIntArrayRegion(ids, 0,nb, tmpids);
    }
    Côté Java, mon tableau est toujours à null.

    Quelqu'un aurait-il une piste svp ?

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    En Java les passages d'objet en paramètre se font par copie de la référence : si cette référence est modifiée à l'intérieur d'une méthode cela n'impacte pas la référence utilisé pour appeler la méthode puisque ce n'est pas la même...

    Ta méthode getIds() ne devrait pas plutôt renvoyer un tableau ???


    a++

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 18
    Par défaut
    bien vu pour la référence

    le problème est qu'en fait ma méthode doit remplir un dizaine de tableau.
    donc, 2 solutions :

    - les tableaux sont alloués côté Java (mais je ne connais pas les tailles, beurrrk)
    - je décompose ma méthode en n méthodes (1 par tableau) dans lesquelles je renvoie un tableau alloué.

    merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant][Win32] Problème d'allocation de tableau de FILE
    Par Patchanka dans le forum Visual C++
    Réponses: 8
    Dernier message: 06/04/2009, 10h49
  2. Allocation dynamique: Tableau de pointeur sur char
    Par Anonymouse dans le forum Débuter
    Réponses: 4
    Dernier message: 21/10/2007, 10h57
  3. Allocation mémoire : tableau vs malloc
    Par scorbo dans le forum Débuter
    Réponses: 4
    Dernier message: 15/06/2007, 12h47
  4. Allocation dynamique tableau dans structure
    Par chental dans le forum C
    Réponses: 2
    Dernier message: 03/08/2006, 09h03
  5. [JNI] Retourner un tableau de String via JNI
    Par seiryujay dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 25/07/2006, 09h58

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