Una volta mi è stata fatta una domanda durante l'intervista.Ottieni il tipo da std :: string, C++
Quindi ho una funzione void f(std::string)
e chiamo una funzione come questa f("int")
. In modo che la mia funzione deve creare un locale int x
nel suo corpo. C'è un modo per ottenere il tipo da const char*
. So che boost::mpl::vector
risolve questo tipo di problema. Qualcuno può dirmi la tecnica?
Sembra che la risposta breve sia che il C++ non supporta la riflessione, ma scommetto che ci sono alcune soluzioni alternative assurde che potresti sfruttare per l'intrattenimento degli intervistatori. Dai un'occhiata a http://stackoverflow.com/questions/41453/how-can-i-add-reflection-to-ac-application for reflection – Catalyst
Penso che sia ancora interessante se qualcuno possa dare una soluzione "semplice" per questa domanda. – coincoin