Senti ma alla fine il set non è complicato, su cplusplus.com trovi tutto ciò che ti serve. Ecco comunque una mia variante, puoi modificarla utilizzando una string al posto del set.
#include <iostream>
#include <string>
#include <set>
#include <string>
using namespace std;
int main ()
{
set < char > s;
set < char > :: iterator it;
char vocali[5] = {'a','e','i','o','u'};
s.insert(vocali,vocali+5); // Ho creato il mio set
string ins;
string :: iterator is;
cin >> ins;
for ( unsigned short i = 0 , j = 1 ; i < ins.size()-1 ; i++ , j++ )
{
it = s.find(ins[i]);
if ( it != s.end() ) // Il "set::find" se non trova il valore si sposta a "set::end"
{
it = s.find(ins[j]);
if ( it != s.end() )
{
ins.erase(i,2);
i--;
j--;
}
}
}
cout << ins;
}