Vuol C ++ 0x tuple utilizzare i nuovi modelli variadic o implementazione tuple macro-cato di Boost?

StackOverflow https://stackoverflow.com/questions/3502680

Domanda

ho letto che era base della versione di Boost, ma non ero abbastanza sicuro di quello che intendeva quando è venuto giù alla realizzazione. So Boost fa il loro proprio modello variadic, ma vorrei assumere C ++ 0x sarebbe utilizzare i propri modelli variadic per la nuova tupla.

È stato utile?

Soluzione

Il tuple in C ++ 0x progetto utilizzi standard C ++ 0x variadic modelli. Si è dichiarato come (§20.4.1):

template <class... Types> class tuple;

Si noti, tuttavia, che le estensioni del linguaggio TR1 includono anche tuple, che non fa uso di modelli variadic, dal momento che non vi era nulla di simile quando TR1 è stato scritto. In TR1, tuple è dichiarata come (§6.1):

template <class T1 = unspecified ,
          class T2 = unspecified ,
          ...,
          class TM = unspecified > class tuple;

dove M è un valore definito dall'implementazione che dovrebbe essere di almeno dieci anni.

TR1 non è formalmente parte del ++ linguaggio C, ma molte implementazioni recenti lo supportano. Se si dispone di un'implementazione che non supporta ancora i modelli variadic, potrebbe sostenere il tuple TR1.

E 'possibile scaricare l'ultima progetto di norma, il (link PDF 10,5 MB) Comitato finale Progetto .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top