w("Hello, Windows Forms"); } 因此,虽然这个简单的示例很有效地演示了最基本的 .NET 框架和 C++ 的托管扩展的概念,但它并不能很好地演示典型的 Windows 窗体程序。对于真实的应用程序,将需要一个 Form 类(或从 Form 派生的类)的实例,如下所示: void __stdcall WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, long lpCmdLine, int nCmdShow) { Form* form = new Form(); ... } form 变量引用了托管类型的一个实例。托管对象是由 .NET 框架的公共语言运行库 (CLR) 处理的,它们的生存周期由垃圾回收器控制的,该回收器在一定的时间取消分配内存。因此,C++ 程序员无需显式地删除托管类型,但是同样不能指望在任何特定时刻(如关闭范围时)破坏对象。 创建窗体后,就需要显示它。如果您曾经看过 Windows 窗体的文档,可能已经注意到了 Form 方法 Show,这意味着: void __stdcall WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, long lpCmdLine, int nCmdShow) { Form* form = new Form(); form->Show(); // This is not what you want to do. } 页码:[1] [2] [3] [4] [5] [6] [7] 第6页、共7页 |