Explode C++

/*esplode le parole separate dal carattere t di una stringa su un array di stringhe
  ritorna l'array e in N la dimensione dell'array */
string *explode(string s, char t, int &N)
{

	string *tmp=new string[N];
	int j=0;
	string parola="";
	for(int i=0;i<s.length();i++)
	{
		if(s[i]!=t)
		parola+=s[i];
		else if(s[i]==t)
		{
			tmp[j++]=parola;
			parola="";
		}
		
		
		
		
	}
    tmp[j]=parola;
	parola="";
	
	string *tmptemp=new string[j+1];
	for(int i=0;i<j+1;i++)
	tmptemp[i]=tmp[i];
	
	N=j+1;
	delete[] tmp;
	return tmptemp;
}