如何从类中的某个类访问某个函数?如何从类中访问函数?
例子:
int main(int argc, char *argv[])
{
class ImageLoading
{
void Loading()
{
cout << 5 <<endl;
}
};
Loading();
return 0;
}
如何从类中的某个类访问某个函数?如何从类中访问函数?
例子:
int main(int argc, char *argv[])
{
class ImageLoading
{
void Loading()
{
cout << 5 <<endl;
}
};
Loading();
return 0;
}
在一个类定义的标准函数是一个实例的类。它只能用于实例,即创建的对象。 要做到这一点,你需要创建一个ImageLoading
类的实例:
ImageLoading instance;
instance.Loading();
这也是可能的创建相关的类,而不是它的实例功能。对于这一点,你需要添加关键字static
在函数定义
static void Loading()
{
cout << 5 << endl;
}
然后使用它,你需要告诉它在ImageLoading
定义的静态类。语法是ClassName::MethodName()
这样:
ImageLoading::Loading();
您只需创建类的实例,然后用它来调用它。
ImageLoading image;
image.Loading();
类被定义main方法外:以下是做到这一点的适当方法:
class ImageLoading
{
void Loading()
{
cout << 5 <<endl;
}
};
int main(int argc, char *argv[])
{
ImageLoading Obj;
Obj.Loading();
return 0;
}
访问一类的功能的类以外的要求1 2的事情是:
static
功能。让我们来快速讲一堂课。默认情况下,当您创建一个class
时,函数或变量的默认访问修饰符是private:
,这意味着只有类本身可以调用它,还有一些其他类可以访问它,但目前并不相关。在发布的问题Loading
功能是私人的。这意味着它只能在课堂上进行调用。即使有班级实例,也不能从main
调用它。
如果您想调用没有对象实例的函数,它需要为static
和public
。
使用示例代码:
class ImageLoading
{
public:
static void Loading()
{
cout << 5 << endl;
}
};
int main(int argc, char *argv[])
{
ImageLoading::Loading();
return 0;
}
缺点为static
功能,是这样的,如果你有类变量不是静态的它不属于一个类的实例,静态函数如果没有该对象的实例,则不能修改它们。
这里是一个很好的来源在C的Access Modifiers
一些例子++: http://en.cppreference.com/w/cpp/language/access
你需要类的一个对象来访问它,或使其静态和使用类名 – P0W
@ P0W:您好,欢迎收看堆栈溢出!你已经找到了_comments部分,这是一个批评的领域,要求澄清,以及与人打架。如果你想回答这个问题(这意味着为问题的作者提供一个解决方案),适当的地方是_answer section_,你可以在下面找到它。然后你的答案可以像平常一样进行同行评审。谢谢你,并享受网站! –
@LightnessRacesinOrbit我认为鼓励用户不要在过去的3年和11个月内不要农场无用的声誉。但要指出的是,我总是尊重200K +用户。 – P0W