Bonjour à tous!
Pour un projet perso, je suis en train d'implémenter un moteur de templating. L'idée est reprendre le même principe que ce qui est fait en ASP.NET. C'est pourquoi je suis en train de faire un rétro-analyse de System.Web.UI.ControlBuilder, qui utilise indirectement une classe utilitaire : System.Web.Util.StringUtil.
Cette classe possède le code suivant (déssamblé via Reflector.Net) :
Or quand j'essaye de compiler ce code, j'ai deux types d'erreur que je ne comprends pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 internal static unsafe void UnsafeStringCopy(string src, int srcIndex, char[] dest, int destIndex, int len) { int num = len * 2; fixed (char* str = ((char*)src)) { char* chPtr = str; fixed (char* chRef = dest) { byte* numPtr = (byte*)(chPtr + srcIndex); byte* numPtr2 = (byte*)(chRef + destIndex); memcpyimpl(numPtr, numPtr2, num); str = null; } } }
-1--2-Cannot convert type 'string' to 'char*'Avez-vous une idée pour résoudre ses erreurs ? Il y a t-il une option de compilation de type /unsafe (qui est déjà activé biensûr) ?You cannot use the fixed statement to take the address of an already fixed expression
Je suis assez étonné que Reflector.Net affiche un code qui ne compile pas, c'est la première fois que cela m'arrive!
Merci d'avance de votre aide!
Partager