Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di cerza
    Registrato dal
    Oct 2009
    Messaggi
    310

    [c++] come usare le stringhe

    salve,
    scusatemi nuovamente ma stavolta il problema sono le stringhe; mi spiego meglio..
    ho dichiarato nel file.h
    codice:
    	string path;
    	string name;
    ho messo poi nel file.cpp

    codice:
    	string path = "a";
    	string name = "b";
    ad un certo punto dovrebbe concatenare le due stringhe

    codice:
    	std:: string concatena = oggetto->path + oggetto->name;
    solo che concatena risulta una stringa vuota....
    grazie mille in anticipo per la disponibilità

    maria

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    225
    codice:
       std::string concatena = path + name;

  3. #3
    Utente di HTML.it L'avatar di cerza
    Registrato dal
    Oct 2009
    Messaggi
    310
    ma se faccio così mi dà il seguente errore: "path: identificatore non dichiarato"

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Hai fatto un po' di confusione ...

    1) non devi inserire

    string path;
    string name;

    nel file.h

    2) oggetto->path e oggetto->name si riferiscono ad elementi di oggetto mentre le stringhe che hai indicato prima sono semplici oggetti autonomi

    Quindi, mostra il codice dei vari file e spiega meglio ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it L'avatar di cerza
    Registrato dal
    Oct 2009
    Messaggi
    310
    in relatà pensavo che potevo accedere alle due proprietà path e name solo attraverso l'oggetto, comunque di seguito posto il codice per intero così forse la sitazione è più chiara.
    nel file.h ho la seguente situazione
    codice:
    using namespace std;
    
    class carte{
    
    	//private:
    		
    
    	public:
    	carte();
    	
    	string path;
    	string name;
    
    void conta();
    
    
    };
    nel file.cpp
    codice:
    void carte::conta(){
    a++;
    }
    nel file main dove viene richiamato il tutto ho la seguente situazione
    codice:
     
    carte carte = new carte();
    
    string path = "models/WATER/models/";
    string name = "model.dae";
    
    std::string fileloc = carte->path + carte->name;
    non so se adesso sn stata più chiara

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Questa è un'altra storia ... bisogna essere precisi nelle richieste, indicando tutto senza limitarsi ai dettagli ...

    In questo caso va bene ... ma dunque dovrai scrivere

    std::string concatena = oggetto.path + oggetto.name;

    oppure

    std::string concatena = oggetto->path + oggetto->name;

    a seconda di cosa è "oggetto".
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it L'avatar di cerza
    Registrato dal
    Oct 2009
    Messaggi
    310
    si ma anche soì non funziona......

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Originariamente inviato da cerza
    si ma anche soì non funziona......
    Non è che fornisci molte indicazioni per risolvere ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Originariamente inviato da cerza

    non so se adesso sn stata più chiara
    No ... e poi non devi modificare i messaggi precedenti dopo che hai avuto risposte ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  10. #10
    Utente di HTML.it L'avatar di cerza
    Registrato dal
    Oct 2009
    Messaggi
    310
    bene allora cerco di ricapitolare.
    ho una classe Carte al cui interno vi sono le proprietà seguenti:
    codice:
     
    class Carte{
    	public:
    	Carte();
    	
    	std::string path;
    	std::string name;
    }
    nell'implementazione effettiva della classe le due proprietà su citate non vengono proprio modificate, poi nella classe main vengono settate in questo modo

    codice:
    Carte* oggettocarte = new papera();
    
    
    string path = "models/WATER/models/";
    string name = "model.dae";
    
    std::string fileloc = (*oggettocarte).path + (*oggettocarte).name;
    logicamente ho riportato solo la parte del codice in cui si modificano le stringhe.
    grazie a tutti per l'aiuto


    maria

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 © 2024 vBulletin Solutions, Inc. All rights reserved.