我已经在Windows Form C ++项目中实现了以下功能
template<class T> class MyQueue
{
T *m_data;
int m_numElements;
public:
MyQueue() : m_data(NULL), m_numElements(0) { }
..... code .....
};
MyQueue<char> logData; // I need to acces it from Form1.h
[STAThreadAttribute]
int main(array<System::String ^> ^args)
{
// Enabling Windows XP visual effects before any controls are created
Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);
// Create the main window and run it
Application::Run(gcnew Form1());
return 0;
}
我想在Form1.h中访问它
在下面
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e)
{
??? MyQueue<char> logData; // I need to acces it
}
有什么线索吗?
最佳答案
您可以声明logdata
静态的。通常,不认为访问原始数据成员是一种好习惯,因此,您可能还希望提供一种静态方法来将字符放入队列中。这是有关C ++中静态成员的教程。
http://www.tutorialspoint.com/cplusplus/cpp_static_members.htm
关于c++ - 如何在C++中的MFC形式中访问全局变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33656248/