C++11 是否可以在C+中定义一个具有静态成员的类的友元函数+;?
我试图声明一个具有静态成员的类的友元函数。我在Visual Studio 2017中编译了我的程序,遇到了以下编译时错误: 未解析的外部符号“private:static struct Number*user::Link”(?Link@user@@0PANUMBER@@A) 这是我的密码:C++11 是否可以在C+中定义一个具有静态成员的类的友元函数+;?,c++11,static-members,friend-function,C++11,Static Members,Friend Function,我试图声明一个具有静态成员的类的友元函数。我在Visual Studio 2017中编译了我的程序,遇到了以下编译时错误: 未解析的外部符号“private:static struct Number*user::Link”(?Link@user@@0PANUMBER@@A) 这是我的密码: #include<iostream> using namespace std; typedef struct Number { int number; struct Number
#include<iostream>
using namespace std;
typedef struct Number
{
int number;
struct Number *Link;
}
num_t;
class user
{
private:
static num_t *Link;
static int Length;
public:
static void Create()
{
cout << "You called a function." << endl;
Link->number = 1;
}
friend void Show_menu();
};
void Show_menu()
{
user::Create();
}
int user::Length = 1;
num_t user::*Link = nullptr;
int main()
{
return 0;
}
#包括
使用名称空间std;
类型定义结构编号
{
整数;
结构编号*链接;
}
数量;
类用户
{
私人:
静态num_t*链接;
静态整数长度;
公众:
静态void Create()
{
我想你想要的是num\u t*user::Link=nullptr;
。
该错误与声明的友元无关