0
点赞
收藏
分享

微信扫一扫

C++ 类 方法 对象 . -> : ::


①、Solution Fbnc; //先实例化一个对象 
②、Fbnc.Fibonacci(10); //调用实例

注意:Fbnc::Fibonacci()这样的调用方法只有在有方法覆盖或重写时才能调用;或者将该方法设为静态方法;经常作为界面按钮的回调函数使用。

or 
①、 Solution *Fbnc= new Solution ();//来创建一个类的对象,返回其指针 Fbnc 
②、 Fbnc->Fibonacci(10);//调用该方法 
③、 delete Fbnc;
 

#include <iostream>
#include <string>

using namespace std;


class Solution {
public:
int Fibonacci(int n) {
int n1 = 0;
int n2 = 1;
int ni;
if (n <= 0) return 0;
if (n == 1) return 1;

for(int i = 2; i <= n; i++) {
ni = n1 + n2;
n1 = n2;
n2 = ni;
}
return ni;

}
};
int main()
{
Solution Fbnc;
cout<<"Fbnq[10]= "<<Fbnc.Fibonacci(10)<<endl; //类是抽象化的,你要定义一个实例对象,通过实例调用;

Solution *Fbnc1= new Solution();
cout<<"Fbnq[5]= "<<Fbnc1->Fibonacci(5)<<endl;
delete Fbnc1;
}

  在学习C++的过程中我们经常会用到.和::和:和->,在此整理一下这些常用符号的区别。 

    1、A.B则A为对象或者结构体;

    2、A->B则A为指针,->是成员提取,A->B是提取A中的成员B,A只能是指向类、结构、联合的指针;

    3、::是作用域运算符,A::B表示作用域A中的名称B,A可以是名字空间、类、结构;

    4、:一般用来表示继承;

 

 

类方法:即静态方法(静态成员函数),指的是类中被static修饰的方法,无this指针,不属于对象,可用类名调用

实例方法:即成员方法,属于对象的方法

性质1:一个类中的其他方法可以互相调用:实例方法可以调用类中的其他方法;但是类方法不能调用实例方法,只能调用其他类方法(非绝对,也可以使用传引用的方法让类方法调用实例方法)

性质2:当类文件加载到内存,实例方法不会分配内存空间,只有在对象被创建之后,才会为实例方法分配内存空间;而类方法在类被加载到内存时就分配了相应的内存空间

性质3:类方法不能被覆盖,实例方法可以被覆盖。
 

举报

相关推荐

0 条评论