Код компиляции - ошибка CS1056 '`'
Я пытаюсь скомпилировать код, используя мой собственный компилятор (CodeDOM), но на таких кодах:
390. sealed class FunctorComparer`1 {
421. public System.Array+FunctorComparer`1[T] () {}
448. abstract public interface IEnumerator`1 {
... (1676 matches) ...
я получаю эту ошибку:
c:\Users\[Username]\AppData\Local\Temp\0z4zag32.0.cs(390,29) : error CS1056: Unexpected character '`'
что мне не хватает?
[EDIT (1, "16:25", "4 May")]
the code i m trying to compile is not written by me. I don't know what that
character stands for, learning it. But i found that on this site
http://submain.com/ghostdoc/samples/PowerCollections/HTML/html/75549028.htm
it is being used, and it is strange the CodeDOM doesnt parse it.
2 ответа
Решение
Имя любого члена (поле, свойство, метод, класс) не может содержать символ
'`'
Если вы читаете подробности из
System.Reflection
Он добавит этот символ, я не уверен, что это необходимо, возможно, потому что он переопределяет виртуальный член x раз. лайк
System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult] //1 time
System.Threading.Tasks.Task`6[System.Threading.Tasks.VoidTaskResult] //6 times
Просто выполнение первой части декларации завершено и содержит всю информацию, необходимую компьютеру для выполнения работы.
from
System.Threading.Tasks.Task`1[System.Threading.Tasks.VoidTaskResult]
to
System.Threading.Tasks.Task
Бэктики должны быть удалены из кода. Это то, на что намекает код ошибки.
Скорее всего, они были добавлены из-за чрезмерного усердия в части системы, из которой вы получаете этот пример кода.