Erros de ponteiro no método de transmissão (c ++)

Eu encontrei um problema.Eu tente mudar o ponteiro, mas o ponteiro não muda. Aqui está o meu código:

 void TestPoint(char* point)
{
point=new char[10];
}
int main(int argc, char* argv[])
{
  char* test=NULL;
  TestPoint(test);
  **//At this point the "test" is still null,why ?**
  return 0;
}

Desculpe, meu inglês é muito ruim, e eu não sei como inserir o código c + +.

questionAnswers(4)

yourAnswerToTheQuestion