我在c ++ / cli winform类中有以下成员函数:
void loginfo( std::string pMessage)
{
richtextbox1->AppendText(gcnew String(pMessage.c_str()));
}
我想记录来自具有以下签名的函数完成的作业的消息:
void getResult(std::function<void(std::string)> func)
在按钮点击事件中,我调用getResult,尝试将loginfo函数作为参数传递:
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
getResult(loginfo);
}
Intelisense使用错误标记行getResult(loginfo):指向成员的指针对托管类无效。
有什么建议吗?
答案 0 :(得分:0)
您需要做的是将logInfo转换为static
函数,即
static void loginfo( std::string pMessage)