C++ & STL
Napísané: So Dec 06, 2014 10:54 pm
V priloženom príklade /vid attachment/ som nadefinoval funkcie printi a print.
Ten moj príklad ide skompilovať.
V študijnom materiáli to bolo takto:
template void print(const T & value)
{
cout<<value<<" ";
}
template void print(T start, T end) {
for ( ;start != end; ++start) {
std::cout << *start << " ";
}
}
Ale ten príklad zo študijného materiálu sa nedá skompilovať c++ prekladačom.
Dá sa napísať jedna generická overloadovaná funkcia print, namiesto funcií printi a print?
Alebo to je nemožné ? Prečo nejde skompilovať príklad, ak sa použije jeden alebo druhý typ funkcie print ?
Ten moj príklad ide skompilovať.
V študijnom materiáli to bolo takto:
template void print(const T & value)
{
cout<<value<<" ";
}
template void print(T start, T end) {
for ( ;start != end; ++start) {
std::cout << *start << " ";
}
}
Ale ten príklad zo študijného materiálu sa nedá skompilovať c++ prekladačom.
Dá sa napísať jedna generická overloadovaná funkcia print, namiesto funcií printi a print?
Alebo to je nemožné ? Prečo nejde skompilovať príklad, ak sa použije jeden alebo druhý typ funkcie print ?