begin process at 2012 05 29 18:43:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Algorithme

 > 

Maths

 > 

pb portée de structure


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

pb portée de structure

lundi 8 décembre 2008 à 19:06:01 | pb portée de structure

xasm

 

           Bonjour,

  J'écrit une structure dans une fonction mais je n'arrive pas à y accéder
à partir d'une autre fonction auriez-vous une idée?
 P.S. ce code est écrit à partir de borland C++ standard.

     //---------------------------------------------------------------------------
#include <windows.h>
#include <iostream>
#include <condefs.h>
#include "essaistruct.h"

#pragma package(smart_init)
#pragma resource "*.dfm"

int ligne = 5;
typedef struct Structure Sine;
struct Structure //structure qui ne sert à rien :p
{
    public:
    string texte;
};

TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    Sine* structure = NULL; //On initialise le pointeur sur la Structure à NULL
      structure = new Sine[ligne]; //On fait pointer structure sur un tableau de n Structures
        structure[0].texte = "0"; //Changement de celle du string
        structure[1].texte = "1";
        structure[2].texte = "2";
        structure[3].texte = "3";
        structure[4].texte = "4";
//    }

    for(int i=0;i<ligne;i++){ //Boucle-test
MessageBox(NULL,structure[i].texte.c_str(),"fichier relus référence",MB_ICONSTOP);
}
        return ;
}


      Merci de m'avoir lu et qui sait peut-être corrigé.

   Amicalement

    Xasm

lundi 8 décembre 2008 à 22:50:36 | Re : pb portée de structure

rt15

Membre Club Administrateur CodeS-SourceS
Salut,

Heu bin j'ai rien compris là... Mais si tu veux accèder à la même instance de structure dans plusieurs méthodes de ta classe TForm1, il faudrait que tu déclares cet instance comme membre privé (Ou autre..) de TForm1.
mardi 9 décembre 2008 à 14:21:21 | Re : pb portée de structure

xasm


        Bonjour,

   Rt15 en fait si j'essai de placer le code :
          
   for(int i=0;i<ligne;i++){ //Boucle-test
MessageBox(NULL,structure[i].texte.c_str(),"fichier relus référence",MB_ICONSTOP);
 
  non plus dans void __fastcall TForm1::Button1Click(TObject *Sender)
{

mais dans par exemple void __fastcall TForm1::Button2Click(TObject *Sender)
{

 alors je ne peux pas y accéder

 

    Donc si je comprend il me suffit de remplacer

public: par

privée:   ????

 

           Merci

 

   Amicalement

mardi 9 décembre 2008 à 14:30:36 | Re : pb portée de structure

rt15

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Pas le public: de

struct Structure //structure qui ne sert à rien :p
{
    public:
    string texte;
};


Ta classe TForm1 doit bien être déclarée quelque part... Faut lui ajouter un membre. C'est de la POO quoi...

int ligne = 5;

Là tu déclare ta variable publique à ton fichier. Si tu veux tu peux mettre l'autre aussi :

Sine* structure = NULL;

Parce que là tu l'as déclarée dans Button1Click. C'est une variable locale à la méthode. Normal que tu ne puisse pas y accéder depuis l'extérieur !


Cette discussion est classée dans : texte, include, structure, tform1, sine


Répondre à ce message

Sujets en rapport avec ce message

Petit problème avec NEW DELETE et RETURN [ par kuruma ] Bonjourj'ai un petit problème avec cette fonction. en c++ ou c :#include #include #include #include #include #include <cst Coleur texte et fond d'écrant texte [ par cognac ] Voici une partie de mon programme (ça provient d'un excellent tut.). Mais je suis incapable de coloré le texte et le «fond d'écrant texte» en même tem Coleur texte et fond d'écrant texte [ par cognac ] Voici une partie de mon programme (ça provient d'un excellent tut.). Mais je suis incapable de coloré le texte et le «fond d'écrant texte» en même tem Comment afficher de l'unicode sur un RichEdit ??? [ par popi0016 ] Bonjour j'ai deja ouvert le probleme et avec vos reponses et mes recherches voici ou j'en suis ... //------------------------------------------------- Texte2Hexa [ par Matt67 ] Bonjour,Je voudrais savoir si on pouvait optimiser ceci :#include #include int main(){    static char *conv[] = {"00 ", "01 ", "02 ", "03 ", "04 ", "0 [c++]nom de la fenetre dans focus [ par kiki67100 ] Bonjour voila jaimerais avoir le nom de la fenetre qui se trouve dans le focus jai deja un code mais il me sort du texte bizzare voila le code :#inclu problème fichier texte (ofstream) taille ? [ par baby3378 ] Bonjour à tous, voila, j'ai repri il y a quelque temps la base d'une source qui listait tous les fichiers d'un repertoire. Jusque là aucun souci. Cep Extraire et memoriser une structure dans un fichier texte [ par moberol ] Bonjour à tous!je voudrai réliser une structure de donné pour mémoriser les structures  (blocs, input[1...5], output[.] ) dans un fichier texte :  dan Envoyer un mail en SMTP [ par sofoot ] Bonjour, J'éssaye de faire un programme qui envoie un mail par smtp sous C++ Builder 6. voici mon programme : fichier.h : //----------------------- encore un prob avec mes doublons... [ par akwell1 ] salut a tous je dois faire un petit programme en c++ mais je suis pas tres douer:j'ai un fichier texte sous la forme suivante:203.125.118.17217.215.12


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,920 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales