跨项目使用的函数定义 Visual C++
Function definition to use across project Visual C++
尝试使用 Visual C++ 重新启动,使用 2010 速成版。
试图弄清楚一些事情。
如果在Project.cpp
文件中定义了一个函数,为什么我不能在Form1.h
文件中使用它,特别是私有的:System::Void Form1_Load
?
我收到这个错误:
1>c:\users\boss\documents\visual studio 2010\projects\second\second\Form1.h(94): error C3861: 'Function': identifier not found
有没有办法定义一个函数以便在任何地方都可以使用它?
在Form1.h中:
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
this->txtMain->Text += FunctionX("Data");
this->txtMain->SelectionStart = this->txtMain->Text->Length;
}
在Project.cpp中:
std::string FunctionX(std::string message) {
// other code here
return message;
}
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
extern std::string FunctionX(std::string message);
this->txtMain->Text += msclr::interop::marshal_as<System::String^>(FunctionX("Data"));
this->txtMain->SelectionStart = this->txtMain->Text->Length;
}
这行得通!感谢您的提示。
尝试使用 Visual C++ 重新启动,使用 2010 速成版。
试图弄清楚一些事情。
如果在Project.cpp
文件中定义了一个函数,为什么我不能在Form1.h
文件中使用它,特别是私有的:System::Void Form1_Load
?
我收到这个错误:
1>c:\users\boss\documents\visual studio 2010\projects\second\second\Form1.h(94): error C3861: 'Function': identifier not found
有没有办法定义一个函数以便在任何地方都可以使用它?
在Form1.h中:
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
this->txtMain->Text += FunctionX("Data");
this->txtMain->SelectionStart = this->txtMain->Text->Length;
}
在Project.cpp中:
std::string FunctionX(std::string message) {
// other code here
return message;
}
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
extern std::string FunctionX(std::string message);
this->txtMain->Text += msclr::interop::marshal_as<System::String^>(FunctionX("Data"));
this->txtMain->SelectionStart = this->txtMain->Text->Length;
}
这行得通!感谢您的提示。