Mon projet a géré le code non géré &. J'ai écrit une classe cIVR en code managé, en la définissant dans un fichier cpp non managé. Le projet fonctionne bien depuis un certain temps. Maintenant, j'ai besoin d'appeler une fonction membre d'un des objets du tableau 'arrChannels' d'une autre fonction dans le même fichier. Pendant la définition de tableau, il ne me permet pas de déclarer statique en raison du code managé. Je veux donc passer une référence à mon tableau dans un pointeur global pour pouvoir accéder à la fonction de membre dans le fichier.Global ou pointeur dans C++ géré pour la classe personnalisée
J'utilise .Net 2008.
main() {
array<cIVR^>^ arrChannels = gcnew array<cIVR^>(num_devices); //MAXCHAN
for(int i=0; i< num_devices; i++) { //MAXCHAN
arrChannels[i] = gcnew cIVR();
}
Je veux quelque chose comme ->
CIVR * ch; // global ch = arrChannels; // dernière dans le code ci-dessus
func2(int index) {
ch[index]->setNumber("123");
}
mais je ne peux pas utiliser arrChannels de func2? son inaccessible en raison de la portée – harisali
Vous n'êtes pas censé utiliser arrChannels de func2. Vous êtes supposé _set_ch pointer vers arrChannels dans le constructeur après avoir initialisé le tableau là-bas et y accéder via ch. –
comment je peux le faire? guide de plz. syntex i.e comment je peux utiliser arrChannels via le pointeur globle scope dans le fichier? – harisali