Ebben a példában két
foo
nevű függvény szerepel, amelyek egymást túlterhelik. Ez nem várt viselkedéshez vezethet.
template<class T> class MyClass { public: int foo(T type); int foo(int b); }; |
A megoldás specializált függvények írása, mint azt az alábbi példa szemlélteti, vagy specializált függvénysablonok használata, amelyek minden kétértelműséget eltávolítanak a kódból.
template<class T> class MyClass { public: int fncType(T type); int fncInt(int b); }; |