这是我的基本代码:如何从extern“C”函数访问类变量?
这里的头文件:
/** Include the necessary things **/
Class MyClass{
private:
std::string mystring;
/**
* Declare constructor, methods, yada yada yada
**/
};
而这里的源文件:
MyClass::MyClass(){
mystring[0] = 0;
}
extern "C" MyClass::function(/* variables */){
cerr << mystring << endl;
}
的问题,现在看来,是我得到一个分段错误on cerr < < mystring < < endl;一行。 函数()需要是外部“C”函数,因为它作为参数传递给本机C函数。
任何想法?提前致谢。
这将无法正常工作。C没有按不知道类和你的方法甚至没有返回值... – 2013-04-10 19:52:41
代码是否编译? – Arun 2013-04-10 19:53:29
C函数需要传递一个表示MyClass实例的参数。 – jxh 2013-04-10 19:53:35