我需要在C函数中使用类的私有变量。 我正在做这样的事情
class Helper
{
private:
std::string name;
public:
std::getName(){return name;}
friend extern "C" void initializeHelper();
};
但此代码段提供错误unqualified-id before string constant
extern "C" {
我无法确定我在这里做错了什么。
答案 0 :(得分:8)
只需在课前向前声明此功能:
extern "C" void foo();
然后你可以在friend-declaration中使用它:
class A {
public:
A() {}
private:
friend void foo();
int a;
};