天天看点

c++ 函数 类 基础知识

#include<iostream>

//struct Point

//{

//    int x;

//    int y;

//    //c结构体中不能定义函数 c++中可以

//    //结构体是一种特殊的类

//    void output()

//    {

//        std::cout<<x<<" "<<y<<std::endl;

//    }

//

//};

//上面的结构体可以换成类

class Point

{

public:

    int x;

    int y;

//构造函数

Point()

{

    x=0;

    y=0;

}

//函数重载

Point(int a,int b)

{

    x=a;

    y=b;

}

//析构函数

~Point(){}

void output()

    {

        std::cout<<x<<" "<<y<<std::endl;

    }

void output(int x,int y)

{

    //这里并不是对上面的成员变量进行赋值,上面的x,y在这里不可见

    //形参和成员变量名字冲突

    //x=x;

    //y=y;

    this->x=x;

    this->y=y;

    //this指针 是一个隐含的指针 指向对象本身,代表了对象的地址

}

};

void main()

{

    Point pt(3,3);

    pt.output(5,5);

    //std::cout<<pt.x<<" "<<pt.y<<std::endl;

    pt.output();

}

//每一个类一定有个构造函数,没有构造函数,就不能创建对象

//构造函数的作用 产生对象

//每一个类 只能有一个析构函数,一个对象生命周期结束时,占用的内存被回收,由析构函数完成

//析构函数不能带参数,不能有返回值

//函数的重载[函数的参数类型以及参数个数不同]

继续阅读