gpt4 book ai didi

.net - 错误: “Expression must have class type” C++/CLI

转载 作者:行者123 更新时间:2023-12-02 11:06:16 27 4
gpt4 key购买 nike

不知道为什么不能编译。我在这里犯什么错误,我该如何解决?我正在尝试编译在示例中找到的这段代码,但是我的编译器必须具有比其严格的设置,或者可能是其他版本的编译器。该代码应只打开一个Windows窗体并显示一些文本。

using namespace System;
using namespace System::Windows::Forms;
using namespace System::Drawing;

public ref class MyForm : Form
{
public:

MyForm ()
{
Text = "Windows Forms Demo";
}

void Main ()
{
Application.Run (gcnew MyForm());
}

protected:
void OnPaint (PaintEventArgs e)
{

e.Graphics.DrawString ("Hello, world", Font,
gcnew SolidBrush (Color.Black), ClientRectangle);
}
}

最佳答案

您为override和访问方法编写了错误的语法。

 virtual void OnPaint(PaintEventArgs^ e) override
{
Form::OnPaint(e);
e->Graphics->DrawString("Hello, world", gcnew System::Drawing::Font("Arial",20), gcnew SolidBrush (Color::Black), ClientRectangle);
}

并且不要使用 void main()
[STAThreadAttribute]
int main()
{
Application::Run(gcnew Form1());
return 0;
}

关于.net - 错误: “Expression must have class type” C++/CLI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8739743/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com