Algorithm C++

#include 
#include 
#include 
#include 
#include 
#include 
#include 
using namespace std;
template 
void print(T& c){
   for( typename T::iterator i = c.begin(); i != c.end(); i++ ){
      std::cout << *i << endl;
   }
}
bool in_string( char c, const string target ){ 
   return target.find( c ) != string::npos; 
}
int main( ){
   const string vowels( "aeiouAEIOU" );
   string phrase( "The quick brown fox jumps over the lazy dog." );
   cout << "\nThere are " << count_if( phrase.begin(), phrase.end(),
      bind2nd( ptr_fun( in_string ), vowels ) )
      << " vowels in \n\"" << phrase << "\"\n";
}