“错误:非静态成员引用必须与特定对象相关"是什么意思?意思是?

what does quot;error : a nonstatic member reference must be relative to a specific objectquot; mean?(“错误:非静态成员引用必须与特定对象相关是什么意思?意思是?)

本文介绍了“错误:非静态成员引用必须与特定对象相关"是什么意思?意思是?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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 我有一个错误:错误:非静态成员引用必须与特定对象相关.

On line return CPMSifDlg::EncodeAndSend I have an error : Error : a nonstatic member reference must be relative to a specific object.

什么意思?

推荐答案

EncodeAndSend 不是静态函数,这意味着它可以在 CPMSifDlg.你不能这样写:

EncodeAndSend is not a static function, which means it can be called on an instance of the class CPMSifDlg. You cannot write this:

 CPMSifDlg::EncodeAndSend(/*...*/);  //wrong - EncodeAndSend is not static

它应该被称为:

 CPMSifDlg dlg; //create instance, assuming it has default constructor!
 dlg.EncodeAndSend(/*...*/);   //correct 

这篇关于“错误:非静态成员引用必须与特定对象相关"是什么意思?意思是?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:“错误:非静态成员引用必须与特定对象相关"是什么意思?意思是?