Поправьте меня, если я ошибаюсь в некоторых терминах (mfc, win32, в vc++

Насколько я понимаю, используя Wiki и this вопрос, который я разместил, у Microsoft есть собственный компилятор под названием VC++, который включен в .net framework вместе со многими другими вещами. И это может быть очень хорошим приложением по следующим причинам (среди прочего):

  1. Мы можем использовать очень хорошую и обширную библиотеку под названием Base CLass Library.
  2. При компиляции он создает независимый от платформы переносимый промежуточный код, называемый байт-кодом (также известный как Common Intermediate Language). Этот CIL является реализацией Microsoft спецификации Common Language Infrastructure (CLI).
  3. Среди других типов мы можем создавать приложения Win32, которые называются так, поскольку они состоят из 32-битных адресов памяти. Так же прога win32. включать программирование со всеми видами элементов графического интерфейса.

Я прав? Теперь мои вопросы

  1. Какая связь между mfc и bcl.
  2. Какая связь между cts и cil.
  3. Сосредоточено ли определение программирования Win32 больше на приложениях, имеющих 32-битные адреса, и меньше на «приложениях, включающих элементы графического интерфейса», или наоборот?

person Community    schedule 11.05.2012    source источник
comment
Какой способ спутать .NET и нативный код! :)   -  person Deanna    schedule 11.05.2012


Ответы (1)


Прежде всего, одно из основных различий между программированием с помощью BCL и Win32 заключается в том, что BCL используется для управляемого кода (для среды CLR), а Win32 — для машинного кода. Используя C++/CLI, вы можете писать код обоих типов.

  1. MFC — это Microsoft Foundation Classes, он по сути заключает Windows API в объектно-ориентированную платформу. Обычно используется в C++.
    BCL (библиотека базовых классов) похожа на что это также набор классов для общего использования, но он предназначен для использования языками CLR, такими как C#, VB.Net или C++/CLI. Так что на самом деле они не связаны, они служат одной цели, но предназначены для разных платформ.

  2. CTS (общая система типов) посвящена определениям типов, безопасности типов и способам представления значений.
    CIL – это общий промежуточный язык, поэтому каждый тип, определенный вами на любом языке, будет скомпилирован. в код CIL, который должен соответствовать правилам, определенным CTS. Это гарантирует, что другие языки CLR могут использовать этот тип независимо от того, какой язык использовался для его создания.

  3. Название Win32 в наши дни ничего не говорит о количестве битов. Его корни находятся в 16-битных окнах, а также поддерживаются 64-битные окна. Так что это старое имя, которое до сих пор широко используется. Вы также можете назвать его «Windows API». Чтобы ответить на ваш вопрос, он не фокусируется ни на одном из них. Как следует из названия, это просто собственный API для приложений, работающих в Windows. Вы можете создавать элементы GUI, получать доступ к системным ресурсам и функциям и многое другое. Приложению Windows не обязательно иметь элементы графического интерфейса.

person Botz3000    schedule 11.05.2012