Salut, je suis relativement nouveau dans le C++ et j'avais quelques questions:
1-Quelle est la manière la plus "propre" de convertir un char* en wchar_t*?
La raison est que j'essaie d'utiliser la fonction open pour pouvoir traiter un fichier à l'aide de la procédure suivante:
void DumpTabInFile(char * cTableau,const int & iTailleTableau,const wchar_t * cFilename)
{
ofstream fFichier;
fFichier.open(cFilename,ios::binary | ios::out | ios::trunc);
fFichier.write(cTableau,iTailleTableau);
fFichier.close();
}
Cette fonction que j'appelle comme suit:
DumpTabInFile(cTableau, iTailleTableau, "h2.txt");
Mais l'erreur suivante apparaît lors de la compilation:
Error 1 error C2664: 'DumpTabInFile' : cannot convert parameter 3 from 'const char [7]' to 'const wchar_t *' c:\documents and settings\michael\mes documents\visual studio 2005\projects\file_challenge4\file_challenge4\main.cpp 74
2-Lorsque on a une fonction simple comme ça:
void show(int nombre)
{
cout << nombre << endl;
}
Est-il préférable de passer 'nombre' par référence (ou pointeur) plutôt que par valeur?
Du genre:
void Show(const int & nombre)
{
cout << nombre << endl;
}
3-Est-il mieux de passer les paramètres par référence ou par pointeurs lorsque on a le choix(pour une fonction comme celle juste en haut)?
Merci de votre précieux temps

Edit: Finalement, j'ai une autre question..
Admettons qu'on créé un tableau à l'aide de l'allocation dynamique de la manière suivante:
int * tableau;
tableau = new int[5];
Est-il possible de supprimer seulement une petite partie de ce tableau et le réutiliser ensuite? Par exemple, faire en sorte qu'au lieu d'avoir 5 emplacements, il n'en ait que 4?