variadic-templates

"rozpakowanie" krotki do wywołania pasującego wskaźnika funkcji

Próbuję zapisać w std::tuple różną liczbę wartości, które zostaną później użyte jako argumenty wywołania wskaźnika funkcji, k ... go samego wyniku netto przechowywanie / przekazywanie niektórych wartości i wskaźnika funkcji do dowolnego przyszłego punktu?

dokonaj wyjątkowego i doskonałego spedycji

Dlaczego nie ma std::make_unique szablonu funkcji w standardowej bibliotece C++11? Znajduję std::unique_ptr<SomeUserDefi ... e jestem pewien, czy to jest poprawne. Naprawdę? Co dokładnie oznacza std::forward<Args>(args)...? Co na to kompilator?

Pretty-print std:: tuple

Jest to kontynuacja mojego poprzedniego pytania na temat pretty-printing stl containers , dla którego udało nam się opracować ... .1) Punkty bonusowe za włączenie tego samego poziomu ogólności (char / wchar_t, ograniczniki par) jak w poprzednim pytaniu!

Jak wykonać ogólne obliczenia nad heterogenicznymi pakietami argumentów zmiennej funkcji szablonu?

Założenie: Po zabawie z różnymi szablonami, zdałem sobie sprawę, że osiągnięcie wszystkiego, co wykracza nieco poza trywia ... ie poprzez meta-programowanie szablonów, aby osiągnąć to, czym jestem szukasz bez ponoszenia ograniczeń istniejących podejść?

Jakie są zasady dla tokena " ... " w kontekście różnych szablonów?

W C++11 istnieją różne szablony, takie jak ten: template< class T, class... Args > unique_ptr<T> make_unique( A ... ońcu wyrażenia zainteresowania. Czy istnieje powód, że w liście argumentów szablonu i liście parametrów elipsa jest pośrodku?

Czy jest jakaś nazwa dla idiomu tworzenia krotek?

Na zwiększ listę mailingową, poniższy sprytny trik, aby utworzyć byt podobny do krotki, został niedawno opublikowany przez @ ... idiomu tworzenia krotek? Być może z funkcjonalnego języka programowania, w którym funkcje wyższego rzędu są częściej używane.

Jak przechowywać zmienne argumenty szablonu?

Czy możliwe jest przechowywanie parametru pack w jakiś sposób do późniejszego wykorzystania? template <typename... T> ... void main(){ Action<int,int> add([](int x, int y){std::cout << (x+y);}, 3, 4); //... add.act(); }

Rozszerzenie pakietu szablonów Variadic

Próbuję nauczyć się różnych szablonów i funkcji. Nie rozumiem dlaczego ten kod się nie kompiluje: template<typename T> ... powiodło się z błędem: Błąd C3520: 'args': pakiet parametrów musi być rozszerzony w tym kontekście (w funkcji foo2).

Jakie jest znaczenie "... ... " tokena? tj. operator podwójnej elipsy na pakiecie parametrów

Przeglądając aktualną implementację GCC nowych nagłówków C++11, natknąłem się na "......"token. Możesz sprawdzić, czy poniższ ... t znaczenie tego żetonu? Edit: wygląda tak przycięte "......"w pytaniu tytuł do"...", Naprawdę miałem na myśli "......" . :)

Czy możliwe jest "przechowywanie" pakietu parametrów szablonu bez jego rozszerzania?

Eksperymentowałem z szablonami C++0x, kiedy natknąłem się na ten problem: template < typename ...Args > struct identi ... ki w maszynie, bez rozpakowywania jej. Czy to możliwe? Jeśli nie, to czy jest jakiś powód, dla którego nie jest to dozwolone?

C++11: mogę przejść z wielu args do krotki, ale czy mogę przejść z krotki do wielu args? [duplikat]

Możliwy duplikat:Jak rozwinąć krotkę na argumenty funkcji szablonu?"unpacking" krotka do wywołania pasującego wskaźnika fu ... ażyć, że wolałbym nie tworzyć jednego szablonu, który działa dla jednego arg, innego, który działa dla dwóch, itp ... ]}

Jak można wywołać STD:: forward na wszystkich argumentach w zmiennej funkcji?

Właśnie pisałem generic object factory i używałem meta-biblioteki preprocesora boost, aby stworzyć zmienny szablon(używając 2 ... ić, wymagałby ręcznego rozpakowywania z ...params i jeszcze nie jestem tam. Czy istnieje szybsza składnia, która by działała?

Jak wywołać funkcję na wszystkich zmiennych args szablonów?

Chciałbym zrobić template<typename... ArgTypes> void print(ArgTypes... Args) { print(Args)...; } I niech będzie ... m mieć, generowałby Kod tylko dla pojedynczej funkcji N - arg print i posiadają co najwyżej N wyspecjalizowane funkcje print.

Lepsze makro LOG () z wykorzystaniem metaprogramowania szablonów

Typowe rozwiązanie logowania oparte na makrach może wyglądać mniej więcej tak: #define LOG(msg) \ std::cout << __ ... ;) Proszę, pozwól mi dowiedz się, czy możesz wymyślić jakiś sposób na poprawę wydajności lub użyteczności tego rozwiązania.

Ogranicz zmienne argumenty szablonu

Czy możemy ograniczyć zmienne argumenty szablonu do określonego typu? Tzn. osiągnąć coś takiego (nie prawdziwe C++ Oczywiście ... ametrów. Najbliższe mamy to: template <class... Args> auto foo(Args... args) Ale to akceptuje każdy typ parametru.

Jak mogę iterować nad spakowaną listą argumentów zmiennych szablonów?

Próbuję znaleźć metodę do iteracji listy zmiennych szablonów a pack. Teraz, podobnie jak w przypadku wszystkich iteracji, pot ... z danymi nie-POD, i uczynić go bardziej bezpiecznym i użytecznym. Dzięki za podpowiedź i z niecierpliwością czekam na pomoc.

używanie deklaracji w szablonie wariacyjnym

To pytanie jest inspirowane następującym rozwiązaniem do wielokrotnego dziedziczenia przeciążania pseudo-dwuznaczności, co ... powstrzymać kompilator przed narzekaniem, że {[2] } są niejednoznaczne, które zupełnie nie są, ponieważ mają różne podpisy.

ogólny wskaźnik funkcji Członka jako parametr szablonu

Rozważ ten kod: #include <iostream> using namespace std; class hello{ public: void f(){ cout<<"f"& ... u szablonowych sztuczek ze stosu Lua. Ale ta część kodu jest nieistotna dla pytanie, i dość długie, więc nie wkleję go tutaj.

Różne szablony szablonów i doskonałe przekierowanie

To pytanie o wzorze generatora obiektów dało mi do myślenia o sposobach jego automatyzacji. Zasadniczo chcę zautomatyzować ... w C++0x? [edytuj] Propozycja N2555 wydaje się sugerować, że jest to dozwolone i GCC twierdzi, że wdrożyła to w GCC4.4.

Jak wykorzystać lokalizację źródła w zmiennej funkcji szablonu?

Funkcja C++20 std::source_location jest używana do przechwytywania informacji o kontekście, w którym wywoływana jest funkcja. ... różnymi szablonami, ale trudno mi dowiedzieć się, jak. Jak Mogę używać std::source_location z zmiennymi funkcjami szablonów?