Chciałbym wiedzieć, w jaki sposób są tuple zaimplementowane w standardowej bibliotece dla C++ 0x. Próbowałem przeczytać description in libstdc++ manual, a następnie przeczytać template listing, ale naprawdę trudno jest zrozumieć, jak to działa, szczególnie podczas czytania kodu.W jaki sposób wdraża się std :: tuple?
Czy ktoś może wyjaśnić mi w kilku zdaniach ideę implementacji krotki? Chcę to wiedzieć, ponieważ myślę o używaniu krotek w moim kodzie i chcę zrozumieć, jak to działa i jaki ma na sobie narzut (rozszerza tylko czas kompilacji, wykonuje wiele operacji kopiowania w pamięci, wykonuje wiele innych funkcji w konstruktorze itp.).
Tak, to świetne wyjaśnienie! Niestety, nie jest tak, w jaki sposób krotka jest zaimplementowana do libstdC++, która przylega do rekurencyjnej implementacji. Nie można czekać na bardziej rozproszoną bibliotekę libC++! –
Przydałoby się również krótko opisać implementację nierekurencyjną. –
@KyleStrand erm, to _jest_ implementacją nierekurencyjną (T: L1, L2, L3 vs T: L1: L2: L3 implementacji rekursywnej) – mitchnull