2011-02-15 4 views
3

J'ai aC# projet AAA avec le type de projet "class library", dans un autre projet C++, il ajoute le AAA.DLL dans la référence, dans le code sourceque signifie le symbole ^% dans C++ projet

void CTest:OnCallback(OperationCallbackInfo^% oci) 

OperationCallbackInfo est classe définie dans AAA.dll

ma question est: qu'est-ce que le symbole^et% signifie dans le paramètre

+2

@Brendan Long: Ce n'est pas un doublon. '^%' n'est pas la même chose que '^' par lui-même (bien que ce ne soit probablement pas une surprise qu'ils soient liés). –

Répondre

7

Cela signifie que vous avez est pas vraiment C++ du tout? , mais C++/CLI, la version propriétaire de Microsoft de la langue pour .NET.

Si la mémoire est utilisée, ^% est la syntaxe d'une "référence de suivi". Cela signifie (au moins à peu près) la même chose que ref en C#. Du point de vue C++, c'est à peu près la même chose que de définir un paramètre comme une référence à un pointeur.

0

Selon this question, c'est un "handle", qui est une référence (similaire à un pointeur) dans C++ géré.

+1

Cela ne concerne que '^', ce qui n'est pas tout à fait la même chose que '^% '. –

Questions connexes