[英]How to access class member function in a namespace in C++
我有一个命名空间。 class 位于命名空间中。
namespace SALES
{
class Sales
{
...
我已经创建了函数。
void SALES::Sales::set()
{
...
现在我正在创建一个 object SALES::Sales interactive ();
但我无法找到方法。 请指出我的错误。
interactive.set();
// 不起作用
SALES::interactive.set();
// 不起作用
interactive.SALES::set();
// 不起作用
访问 function 的非静态成员的方法是使用object 运算符的成员。 例如,
class SomeObject {
public:
SomeObject() {}
void SayHello() { ... }
int age = 10;
};
// When calling members.
SomeObject object;
object.SayHello();
int age = object.age;
并且在实例化时,使用SALES::Sales interactive;
或SALES::Sales interactive{};
反而。 如果不是,当您尝试这样做时: SALES::Sales interactive ();
, C++ 将尝试将其解析为 function。 现在在你的情况下,第一个; interactive.set();
需要工作。
如果它仍然不起作用,则可能与成员的可访问性有关。 默认情况下,类将其成员设为私有; 只有朋友类和它本身可以访问这些对象。 因此,请确保成员是公开的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.