C++ 选择使某个函数成为成员、非成员、私有、公共等
我已经搜索了关于成员函数和非成员函数之间区别的描述,虽然我仍然很困惑,但我想我应该举个例子来澄清一下。这里有一个问题来自我们的老师作为学习材料给我们的一个旧测试: 假设我们有一个main()程序,它使用文本中的queue2.h和node2.h模板实现,创建一个字母队列(queue letters)C++ 选择使某个函数成为成员、非成员、私有、公共等,c++,member,non-member-functions,C++,Member,Non Member Functions,我已经搜索了关于成员函数和非成员函数之间区别的描述,虽然我仍然很困惑,但我想我应该举个例子来澄清一下。这里有一个问题来自我们的老师作为学习材料给我们的一个旧测试: 假设我们有一个main()程序,它使用文本中的queue2.h和node2.h模板实现,创建一个字母队列(queue letters) 我们想编写一个流操作符,将字符串(东西)的所有字符插入队列(字母(b)如果我们这样做,很难说我们不知道您上面描述的程序的真正目的。我可以给您一个大致的答案 发挥作用 如果您希望任何人都可以访问它,则为
有关实现的详细信息。如果函数必须访问类的私有成员,则它必须是成员函数。将需要访问私有数据成员的内容设置为成员函数,而不需要访问私有数据成员的内容设置为成员函数(或不必为成员函数)自由函数。我同意成员函数通常应该在朋友函数上使用,而不是在非朋友自由函数上使用。@chris:你是说C型函数吗?你能解释一下吗?我的意思是,如果一个函数不需要访问类的私有部分,为什么要赋予它这样做的能力?@chris:是的,在这种情况下,我们可以使用非f型函数朋友,非成员函数。