Код компиляции - ошибка 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

Бэктики должны быть удалены из кода. Это то, на что намекает код ошибки.

Скорее всего, они были добавлены из-за чрезмерного усердия в части системы, из которой вы получаете этот пример кода.

Другие вопросы по тегам