คำถามติดแท็ก template-templates

10
แม่แบบพารามิเตอร์มีประโยชน์อย่างไรบ้าง?
ฉันเคยเห็นตัวอย่างของ C ++ โดยใช้พารามิเตอร์แม่แบบแม่แบบ (นั่นคือแม่แบบที่ใช้แม่แบบเป็นพารามิเตอร์) เพื่อทำการออกแบบคลาสตามนโยบาย เทคนิคนี้มีประโยชน์อื่น ๆ อีกบ้าง?

1
เทมเพลตตัวแปรสามารถส่งผ่านเป็นอาร์กิวเมนต์เท็มเพลตเทมเพลตได้หรือไม่
ตัวอย่างที่ไร้สาระดังต่อไปนี้ไม่ได้รวบรวม แต่มีวิธีอื่นในการส่งแม่แบบตัวแปรเป็นอาร์กิวเมนต์แม่แบบแม่แบบหรือไม่ template<typename T> constexpr auto zero = T{0}; template<typename T, template<typename> auto VariableTemplate> constexpr auto add_one() { return VariableTemplate<T> + T{1}; } int main() { return add_one<int, zero>(); } ลองใช้ Compiler Explorer

2
การลดชนิดอาร์กิวเมนต์เท็มเพลตเทมเพลต C ++
ฉันมีรหัสที่ค้นหาและพิมพ์การจับคู่ของรูปแบบเหมือนกับการข้ามคอนเทนเนอร์ของสตริง ทำการพิมพ์ในฟังก์ชั่นfooที่เทมเพลต รหัส #include <iostream> #include <algorithm> #include <iterator> #include <vector> #include <string> #include <tuple> #include <utility> template<typename Iterator, template<typename> class Container> void foo(Iterator first, Container<std::pair<Iterator, Iterator>> const &findings) { for (auto const &finding : findings) { std::cout << "pos = " << std::distance(first, finding.first) << " "; std::copy(finding.first, finding.second, …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.