Опубликован: 13.07.2010 | Доступ: свободный | Студентов: 889 / 20 | Оценка: 4.40 / 4.20 | Длительность: 77:34:00
Самостоятельная работа 1:

Простое приложение на нескольких языках программирования

Самостоятельная работа 1: 123 || Самостоятельная работа 2 >

Написание класса на 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/Add Reference... (Проект/Добавить ссылку)


  • В открывшемся диалоговом окне установите вкладку Project, выделите оба предыдущих проекта и щелкните по кнопке Select (или прежде щелчком по кнопке Browse найдите путь к проекту), а затем по кнопке OK


  • Постройте проект, не запуская его на выполнение, и убедитесь в отсутствии синтаксических ошибок

После этого можно убедиться также, что в соответствующем каталоге последнего проекта помещены DLL двух первых проектов и создан исполнимый файл консольного приложения последнего проекта


Наконец пришло время сделать последний проект стартовым проектом нашего решения. Хотя оболочка автоматически в данном случае назначила его стартовым, потому что это единственный исполнимый файл решения (в решение могут входить несколько исполнимых файлов, тогда не очевидно, какой из них будет стартовым и это нужно определять явно). Но для тренировки назначим последний проект стартовым.

  • Откройте панель Solution Explorer и щелкните правой кнопкой мыши на корневом узле проекта с именем HelloCSharp. В появившемся контекстном меню выполните команду Set as StartUP Project


  • Запустите проект - должен получиться следующий результат


Мы проиллюстрировали уникальную возможность разрабатывать различные части проекта на разных языках, поддерживаемых средой .NET, или подключать к проекту файлы с DLL, разработанные в этой среде другими программистами неважно на каком языке. Открывается огромная перспектива для переносимости и приемственности кода!


Самостоятельная работа 1: 123 || Самостоятельная работа 2 >