Поделиться через


Образец TilePuzzle: демонстрация взаимодействия между C# и C++

Обновлен: Ноябрь 2007

В образце TilePuzzle демонстрируется ряд важных возможностей Visual C++.

  • В состав образца входят компоненты, реализованные на базе новых технологий, таких как C++, C# и новые атрибуты, связанные с COM.

  • В образце демонстрируется взаимодействие между управляемыми компонентами (разработанными в C++ и C#) и компонентами в машинном коде (разработанными в C++ с использованием атрибутов COM).

В образце реализована простейшая игра-головоломка — "пазл". В начале загружается картинка; она разбивается на произвольное число квадратных фрагментов (определяемое пользователем), которые случайным образом перемешиваются. Пользователь должен решить головоломку, передвигая квадратики для восстановления первоначального изображения. Помимо описанных возможностей, в образце демонстрируется решение головоломки с помощью эвристических алгоритмов поиска, написанных на языке C++, и классов .NET Framework.

fx82zhxa.alert_security(ru-ru,VS.90).gifПримечание о безопасности.

Этот образец кода служит для демонстрации основных принципов и не предназначен для использования в приложениях или на веб-узлах, поскольку не может считаться примером наиболее безопасного кода. Корпорация Майкрософт не несет ответственности за случайные или косвенные убытки в случае использования образца кода не по назначению.

Чтобы получить образцы и инструкции по их установке, выполните следующие действия.

  • В меню Справка среды Visual Studio выберите пункт Примеры.

    Дополнительные сведения см. в разделе Поиск файлов примеров.

  • Самая последняя версия и полный список образцов доступны в Интернете на странице образцов Visual Studio 2008.

  • Кроме того, образцы находятся на жестком диске компьютера. По умолчанию образцы кода и файл Readme копируются в папку, находящуюся в папке \Program Files\Visual Studio 9.0\Samples\. Все образцы кода для экспресс-выпусков Visual Studio находятся в Интернете.

Построение и запуск образца

Построение и запуск образца TilePuzzle с использованием Visual Studio

  1. В среде Visual Studio IDE загрузите файл решения PUZZLE.sln.

  2. В обозревателе решений щелкните правой кнопкой мыши решение PUZZLE.

  3. В контекстном меню выберите команду Построить решение.

  4. В меню Отладка выберите команду Пуск.

После успешного построения проекта попробуйте решить головоломку сами.

Архитектура образца

Базовая архитектура имеет следующий вид:

График архитектуры мозаики пазла

fx82zhxa.alert_note(ru-ru,VS.90).gifПримечание.

Возможности сохранения и загрузки игры не реализованы.

Для доступа к COM-компоненту машинного кода из управляемых объектов .NET Framework в образце используется программа TLBIMP.EXE, генерирующая прокси-библиотеку DLL для .NET Framework.

Классы

В образце показаны следующие классы:

  • System.Windows.Forms.Form — реализует объект AboutForm в проекте PUZZLE.

  • System.Object — реализует объект GameLevelEnum в проекте PUZZLE.

  • System.Delegate — реализует объект SolveThreadProcDlg в проекте PUZZLE.

См. также

Ссылки

String

Array

gcnew

Classes and Structs (Managed)

Assert

Int32

Другие ресурсы

Примеры взаимодействия