1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
Like any function, overloaded functions may be declared, either using
plain declarations or instantiation declarations. Explicit template argument
types may also be used. Example:
itemization(
it() To declare a function template tt(add) accepting certain containers:
verb(template <typename Container, typename Type>
Type add(Container const &container, Type const &init);)
it() to use an instantiation declaration (in which case the compiler must
already have seen the template's definition):
verb(template int add<std::vector<int>, int>
(std::vector<int> const &vect, int const &init);)
it() to use explicit template type arguments:
verb(std::vector<int> vi;
int sum = add<std::vector<int>, int>(vi, 0);)
)
|