int CPMSifDlg::EncodeAndSend(char *firstName, char *lastName, char *roomNumber, char *userId, char *userFirstName, char *userLastName)
{
...
return 1;
}
extern "C"
{
__declspec(dllexport) int start(char *firstName, char *lastName, char *roomNumber, char *userId, char *userFirstName, char *userLastName)
{
return CPMSifDlg::EncodeAndSend(firstName, lastName, roomNumber, userId, userFirstName, userLastName);
}
}
在
return CPMSifDlg::EncodeAndSend
行上,我有一个错误:错误:非静态成员引用必须相对于特定对象。
这是什么意思?
最佳答案
EncodeAndSend
不是静态函数,这意味着可以在CPMSifDlg
类的实例上调用它。您不能这样写:
CPMSifDlg::EncodeAndSend(/*...*/); //wrong - EncodeAndSend is not static
应该将其称为:
CPMSifDlg dlg; //create instance, assuming it has default constructor!
dlg.EncodeAndSend(/*...*/); //correct
关于c++ - “error : a nonstatic member reference must be relative to a specific object”是什么意思?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9818515/