2013-05-09 14 views

risposta

12

Hai mischiato i tuoi tipi nella lista di inizializzazione. In questo caso può essere abbastanza chiaro, ma non dimenticare

std::string foo; 
for(auto x : {foo, "bar"}){} 

Sono anche 2 tipi distinti. Ovviamente ci sono molti altri casi in cui ci si può aspettare che funzioni, ma i tipi devono corrispondere esattamente.

+0

Come/perché hai risposto subito alla tua domanda? Oppure SE sta diventando strano su di me –

+0

@MikeVine: Presumibilmente, perché il messaggio di errore è abbastanza confuso da pensare che altri potrebbero trarre beneficio da una spiegazione di esso. Non c'è niente di sbagliato nel rispondere alle tue (sensate) domande. –

+0

@ MikeVine Sì, quello che ha detto l'altro Mike. SO ha la possibilità di farlo, e non ho trovato un duplicato sul sito, quindi ho pensato che sarebbe stata una bella aggiunta se qualcuno si fosse mai chiesto questo. :) – Nick

Problemi correlati