Visual c++ C++/CLI:ProgressBar->;价值

Visual c++ C++/CLI:ProgressBar->;价值,visual-c++,datetime,c++-cli,progress-bar,Visual C++,Datetime,C++ Cli,Progress Bar,有人知道下面的代码有什么问题吗?this->progressBar1->Value部分由按钮\u click\u event操作,但不在此代码段中。我一直在胡闹,但没用: int Trouble () { int hour = System::DateTime::Now.Hour; this->progressBar1->Value = hour; return 0; } 此代码段是WinForm的一部分,它位于我的代码的#pragma endregion部分(顺便说一句,这是

有人知道下面的代码有什么问题吗?
this->progressBar1->Value
部分由
按钮\u click\u event
操作,但不在此代码段中。我一直在胡闹,但没用:

int Trouble ()
{
int hour = System::DateTime::Now.Hour;
this->progressBar1->Value = hour;
return 0;
}  

此代码段是WinForm的一部分,它位于我的代码的
#pragma endregion
部分(顺便说一句,这是Visual C++)。像往常一样,我会寻求任何帮助或建议。谢谢

看来您已将此函数设置为自由函数,而不是类的成员函数。将此定义放在类的定义中(可能在
private:
access修饰符下),您将获得预期的行为。另外,请阅读“范围”,因为这是一个非常基本的概念,不理解它是您遇到这个问题的原因。

我认为这种意见交流可以作为一个答案:


@弗朗西斯:那么你需要展示更多的代码,尤其是调用
麻烦
的函数本·沃格特


没有函数调用它;此代码是独立的刘汉铨


因此,您可以将其从代码中删除,而程序仍然可以编译本·沃格特

你可以这么说刘汉铨


这当然解释了为什么它不起作用。仅仅编写一个函数是不够的,你还必须在适当的时候调用它。

@Francis:养成在请求帮助时包含实际错误消息的习惯。没有错误!!!这是奇怪的部分,WinForm不起作用了…@Francis:那么你需要显示更多的代码,特别是调用
麻烦的函数;此代码是独立的。因此,您可以将其从代码中删除,并且程序仍然可以编译?嗯。。。还有其他建议吗?无论我放在哪里,代码都不起作用。@Francis:是的——将整个代码文件发布到pastebin/ideone/codepad,并提供链接。通过这种方式,我们可以在其周围的上下文中检查定义,以确定问题所在。@Francis:谢谢。现在,该文件中的哪一行代码给您带来了问题,这些问题的细节是什么(例如,它们是编译器错误吗?意外的运行时行为?)?没有错误,这是奇怪的部分!它只是一个函数,恰当地命名为
Trouble
,它没有按预期的方式工作。@Francis:定义“没有按预期的方式工作”。如果不知道1)你的预期和2)实际发生了什么,怎么能诊断出这一点?此外,该链接中的代码中没有名为
Trouble
的函数。