Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di fausto
    Registrato dal
    Jun 2002
    Messaggi
    294

    c++] consigli per funzione del tipo getValue()

    Ciao ragazzi, pensavo ad una questione di programmazione e forse voi potete darmi qualche
    suggerimento.

    Ho una classe, con un certo numero di variabili dichiarate private
    perche' non voglio che possano essere cambiate dall'esterno. Ad ogni
    modo, conoscere il valore che esse assumono puo' essere utile all'esterno.

    Fin'ora ho fatto cosi': scrivo tanti metodi pubblici quante sono le
    variabili private il cui valore voglio sia accessibile dall'esterno.
    Tipicamente queste non fanno altro che dare un "return nomeVariabile".

    Mi chiedevo se uno non potesse fare una funzione che accetta come
    parametro una stringa che contiene il nome della variabile e ne restituisce
    il valore. Ora pero' non ho la piu' pallida idea di come trattare la stringa
    in modo da far restituire alla funzione il valore dela variabile il cui
    nome e' nella stringa.


    Avete qualche idea in proposito?

    mmm forse uno puo' pure scrivere un enum con i nomi delle variabili che intende rendere accessibili all'esterno e passare quelle come parametro. poi, con uno switch all'interno della funzione, ritorno il valore...
    laptop asus L5800C
    slackware 11.0 kernel 2.6.17

  2. #2
    Utente di HTML.it L'avatar di shodan
    Registrato dal
    Jun 2001
    Messaggi
    2,381
    Personalmente la trovo una scelta poco oculata.
    Tieni presente che in genere funzioni di quel tipo possono essere espanse inline dal compilatore visto che contengono solo un return migliorando in tal modo le prestazioni.

    In ogni caso si potrebbe ridurre la cosa ad un pattern factory di tipo particolare visto che in questo caso non ritorni oggetti ma valori, però il principio è il medesimo, passare una chiave per ottenere un valore di ritorno con una serie di if else o switch.

  3. #3
    Utente di HTML.it L'avatar di fausto
    Registrato dal
    Jun 2002
    Messaggi
    294
    cos'e' un pattern factory?
    laptop asus L5800C
    slackware 11.0 kernel 2.6.17

  4. #4
    Utente di HTML.it L'avatar di fausto
    Registrato dal
    Jun 2002
    Messaggi
    294
    me lo sto leggendo da google...
    laptop asus L5800C
    slackware 11.0 kernel 2.6.17

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.