Nome variabile in stringa

di il
11 risposte

Nome variabile in stringa

Salve a tutti. Sto per porvi un quesito un po' insolito che semplificherebbe un po' il mio lavoro: è possibile ottenere e impostare il nome di una variabile in stringa? Nel senso: posso fare una cosa tipo variabile.get_nome() che mi restituisca "variabile" oppure per creare una serie di variabili assegnando a ognuna un nome da un array di stringhe o cose simili?

11 Risposte

  • Re: Nome variabile in stringa

    Vorresti acquisire il nome con cui dichiare una variabile? ho capito bene?
  • Re: Nome variabile in stringa

    Si. Se ho int ciao=3, vorrei ottenere "ciao" in qualche modo
  • Re: Nome variabile in stringa

    Scusa la domanda, ma perchè questa necessità ?
  • Re: Nome variabile in stringa

    Non è una necessità, ma una curiosità. Poi ovviamente avrebbe delle applicazioni pratiche ma niente di necessario
  • Re: Nome variabile in stringa

    No, non puoi perché la compilazione elimina i nomi delle variabili.
  • Re: Nome variabile in stringa

    @oregon ha quasi ragione.

    Come vedi, @andpri, la teoria serve.

    Quello che vorresti avere, e che esiste in Java, C#, Python e diversi altri linguaggi di programmazione, e' quello che si chiama reflection; cioe' la possibilita', da parte del programma, di conoscere la struttura di se stesso.

    Quindi, ad esempio, e' possibile conoscere la forma delle strutture dati ed il contenuto/valore.

    Tecnicamente le informazioni esistono, perche' vengono usare dal debugger, ma non sono accessibili in modo semplice (come in Java, C# ecc).
  • Re: Nome variabile in stringa

    ANDPRI ha scritto:


    Non è una necessità, ma una curiosità. Poi ovviamente avrebbe delle applicazioni pratiche ma niente di necessario
    Curiosity killed the cat.

    In Assembly e nei linguaggi che vengono compilati e linkati producendo codice macchina nativo tutte le informazioni simboliche vanno irrimedabilmente perdute. Compilando in modalità debug, invece, tali informazioni vengono rese disponibili, ma solo in un formato proprietario: in soldoni, l'eseguibile aumenta di dimensioni perché contiene (alcuni frammenti) delle symbol tables originali, e vengono creati files ausiliari contenenti l'intero dizionario dei dati e delle funzioni.

    Solo i linguaggi (parzialmente) interpretati, basati su runtime macchinosi, consentono la reflection: da Clipper a Python al CLR del dotnet...
  • Re: Nome variabile in stringa

    Quindi la risposta definitiva è no...?
  • Re: Nome variabile in stringa

    Tu che dici?
  • Re: Nome variabile in stringa

    migliorabile ha scritto:


    @oregon ha quasi ragione.
    Non vorrei essere frainteso ma il "quasi" non è corretto.

    Sui linguaggi compilati (parlavamo di C/C++ non in versione debug come correttamente osservato dal nostro caro MAW), non c'è discorso che tenga.

    Se la domanda verte su *tutti* i linguaggi e le modalità di esecuzione allora anche con il BASIC Commodore potevi ottenere il nome delle variabili ... ma è un altro discorso.
  • Re: Nome variabile in stringa

    Ok grazie
Devi accedere o registrarti per scrivere nel forum
11 risposte