templatevoid f( T arg )
{
printf( "general call" );
...
}
template<>
void f( long arg )
{
printf( "explicit call" );
...
}
и вызов
int i = 0;
f( i );
Что будет вызвано?
Вместо int и long можно использовать указатели на класс и его предок; константный и неконстантный указатели.