Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    problemi con le classi e i metodi c++

    ho da fare un esame e non capisco il problema che mi ricorre, ne trovo uno e appena lo metto a posto me ne esce un altro . questa volta mi da problemi con le proprietà della classe , in special modo quando uso "cout<< e cin>>" mi dice che non posso usarle perchè non so il motivo. vi allego il codice e pure l'errore . se riuscite a darmi una mano ve ne sarei grato.

    codice:
    #include <iostream>
    using namespace std;
    
    class Persona
    {
    public:
        Persona();
        ~Persona();
    
        string nome[20];
        string cognome[20];
        string data_nascita[30];
        char sesso;
    
    public:
        void Setnome();
        void Setcognome();
        void Setdata_nascita();
    };
    
    
    /*Persona()
    {
        string data_nascita[20]="null";
        string nome[20]="null";
        string cognome[20]="null";
        char sesso;
    
        void Setnome()
        {
            string nome1[20]="null";
        }
    
        void Setcognome()
        {
            string cognome1[20]="null";
        }
        void Setdata_nascita1
        {
            string data_nascita1[20]="null";
        }
    }
    
    
    
    
    ~Persona()
    {
        cout<<"oggetto distrutto"<<endl;
    }*/
    
    void Persona::Setnome()
    {   // l'errore mi viene segnalato nel cin e lo stesso vale per le altre proprietà
        string nome1[20];
        cout<<"inserisci nome : ";
        cin>> nome1;
        nome=nome1;
    }
    void Persona::Setcognome()
    {
        cout<<"inserisci cognome : ";
        cin>>cognome1;
        cognome=cognome1;
    }
    void Persona::Setdata_nascita()
    {
        cout<<"inserisci data di nascita nascita : ";
        cin>>data_nascita1;
        data_nascita=data_nascita1;
    };
    Ultima modifica di MItaly; 06-09-2016 a 01:05 Motivo: Indentazione, tag CODE

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Prima di tutto, perché usi vettori di string in

    string nome[20];
    string cognome[20];
    string data_nascita[30];

    ?

    Non sono vettori di char come in C ma stringhe del C++ quindi semplicemente

    string nome;
    string cognome;
    string data_nascita;

    In secondo luogo, non si capisce cosa siano nome1, cognome1, data_nascita1 e perché le usi ...

    Poi il codice non è chiaro ... ci sono più volte gli stessi metodi ... utilizza i tag CODE per presentare il codice nel forum.

    In breve, per il solo nome dovevi scrivere qualcosa come

    codice:
    
    
    codice:
    void Persona::Setnome(string &nome1)
    {
       nome=nome1;
    }
    


    ed eseguire l'input dal main ...
    Ultima modifica di oregon; 03-09-2016 a 23:31
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.