#.net #mono
#.net #mono
Вопрос:
Просто любопытно, поддерживает ли mono «Инициализаторы модулей»? http://blogs.msdn.com/b/junfeng/archive/2005/11/19/494914.aspx
Ответ №1:
ДА.
Я не знаю IL, но я написал это на C#
using System;
public class Program {
public static void Main(string[] args) {
Console.WriteLine("Main");
}
}
Затем я использовал monodis для создания il-файла и добавил этот код после .module main.exe линия.
.method assembly specialname rtspecialname static
void .cctor() cil managed
{
.maxstack 8
IL_0000: ldstr "module method"
IL_0005: call void class [mscorlib]System.Console::WriteLine(string)
IL_000a: ret
}
И когда он запускается, я получаю ожидаемый результат.
module method
Main
И ilasm, и среда выполнения поддерживают это.
Комментарии:
1. 1 Я почти собирался сказать «приятно видеть на SO», пока не понял, что вы один из самых неактивных 3-летних участников. 😛
2. Да. Но в любом случае хороший ответ! Особенно учитывая, что Саймон, по мнению некоторых людей, является кем-то вроде гуру IL. 😉