如何解决是否可以在C ++中用静态成员定义类的好友函数?
我正在尝试声明具有静态成员的类的朋友功能。我在Visual Studio 2017中编译了程序,并遇到了编译时错误:
未解析的外部符号“私有:静态结构体编号* user :: Link”(?Link @ user @@ 0PAUNumber @@ A)
这是我的代码:
#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;
}
通常,是否可以在C ++中用静态成员定义类的朋友功能?如果是这样,我该如何解决以上问题?
解决方法
我认为您想要num_t* user::Link = nullptr;
。
该错误与声明的朋友无关。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。