Простое приложение на нескольких языках программирования
Написание класса на C# .NET и встраивание его в консольное приложение
Приступим к написанию кода на C#. На этот раз мы создадим консольное приложение Visual C#, которое назовем HelloCSharp. Это имя и будет закреплено за исполнимым файлом консольного приложения.
-
Вызовите
через меню оболочки мастер добавления нового проекта в наше
решение
-
Укажите
мастеру, что мы собираемся добавить в решение проект типа
консольного приложения на C# с именем HelloCSharp
Обратите внимание на нижнюю часть окна мастера, где прописан подчиненный каталог для размещения кода нового проекта, добавляемого в решение.
После щелчка по кнопке OK мастер создаст заготовку кода добавляемого проекта HelloCSharp. Состав файлов заготовки добавленного проекта отобразится в панели Solution Explorer, где уже находятся два ранее созданных нами проекта, составляющих решение
-
Переименуйте
файл Class1.cs, автоматически
сгенерированный мастером, в файл HelloCSharp.cs -
Вызовите
файл HelloCSharp.cs на редактирование, измените имя класса,
уберите лишние комментарии, уберите аргументы функции Main()
и дополните кодом, чтобы окончательный вид был таким
using System;
namespace HelloCSharp
{
class HelloCSharp
{
[STAThread]
static void Main()
{
HelloVB.HelloVB hello = new HelloVB.HelloVB();
hello.Hello();
Console.WriteLine("Привет из Visual C# .NET !!!");
Console.ReadLine();// Для задержки окна вывода
}
}
}
Листинг
1.4.
Код на языке C#
Статический метод Main() является точкой входа в приложение. Этот метод создает новый объект класса HelloVB на куче и вызывает его метод Hello(), в который мы ранее зашили два сообщения - вначале из кода на C++.NET, затем из кода на VB.NET. Третье сообщение C# выдаст сам.
Необходимо сообщить компилятору языка C#, где находится сборка, определяющая данный тип. На этот раз следует добавить в проект C# ссылку на оба проекта HelloCPP и HelloVB. Для этого:
-
В открывшемся
диалоговом окне установите вкладку Project, выделите оба предыдущих
проекта и щелкните по кнопке Select (или прежде щелчком по кнопке Browse
найдите путь к проекту), а затем по кнопке OK
-
Постройте
проект, не запуская его на выполнение, и убедитесь в отсутствии
синтаксических ошибок
После этого можно убедиться также, что в соответствующем каталоге последнего проекта помещены DLL двух первых проектов и создан исполнимый файл консольного приложения последнего проекта
Наконец пришло время сделать последний проект стартовым проектом нашего решения. Хотя оболочка автоматически в данном случае назначила его стартовым, потому что это единственный исполнимый файл решения (в решение могут входить несколько исполнимых файлов, тогда не очевидно, какой из них будет стартовым и это нужно определять явно). Но для тренировки назначим последний проект стартовым.
-
Откройте
панель Solution Explorer и щелкните правой кнопкой мыши на
корневом узле проекта с именем HelloCSharp. В появившемся
контекстном меню выполните команду Set as StartUP Project
-
Запустите
проект - должен получиться следующий результат
Мы проиллюстрировали уникальную возможность разрабатывать различные части проекта на разных языках, поддерживаемых средой .NET, или подключать к проекту файлы с DLL, разработанные в этой среде другими программистами неважно на каком языке. Открывается огромная перспектива для переносимости и приемственности кода!








