C++ Templates

GPTKB entity

Statements (53)
Predicate Object
gptkbp:instanceOf Programming Language Feature
gptkbp:documentedIn gptkb:The_C++_Programming_Language
C++ Standard Library Documentation
gptkbp:enables Compile-time Computation
Generic Programming
Policy-based Design
Type-safe Code Reuse
Zero-overhead Abstraction
gptkbp:hasFeature CRTP
SFINAE
Default Template Arguments
Explicit Specialization
Partial Specialization
Template Aliases
Template Argument Deduction
Template Instantiation
Template Template Parameters
gptkbp:hasSyntax template <class T> void func(T arg) {}
template <typename T> class MyClass {};
https://www.w3.org/2000/01/rdf-schema#label C++ Templates
gptkbp:improves gptkb:C++11
gptkb:C++14
gptkb:C++17
gptkb:C++20
gptkbp:introducedIn gptkb:C++98
gptkbp:limitation Code Bloat
Complex Error Messages
Difficult Debugging
Limited Reflection
Long Compile Times
gptkbp:partOf gptkb:C++
gptkbp:relatedTo gptkb:C++_STL
gptkb:C++_Concepts
C++ Metaprogramming
C++ Type Traits
gptkbp:standardizedBy gptkb:ISO/IEC_14882
gptkbp:supports Non-type Parameters
Template Metaprogramming
Template Specialization
Type Parameterization
Variadic Templates
gptkbp:usedBy gptkb:std::vector
std::function
std::tuple
std::unique_ptr
std::map
gptkbp:usedFor gptkb:Algorithms
Containers
Policy-based Design
Smart Pointers
Type Traits
gptkbp:bfsParent gptkb:Java_Generics
gptkbp:bfsLayer 8