C++入门_类(3)

//从c到c++的时候对于类的理解还是很重要的,我在当初学的时候,可是过了很久才明白的
//类就是人类啊。人类是啥啊?
//人类就是具有姓名、型别、年纪、家乡等等属性
//人类就是具有走路、吃饭、思考、学习等等行为
//的抽象的一种概念
//现实世界中存在人类的概念,但是只存在人类的个体。
//人类对应为C++类的概念
//属性为类的成员变量
//行为为类的成员函数
//个体为类的对象

#include <iostream>
using namespace std;
//定义一个类Person
class Person{
public://共有访问权限
    //构造函数
    Person(char* name, int age, char* sex) 
        //初始化列表
        :m_name(name), m_age(age), m_sex(sex){
    //函数体,这里为空
    }
    //成员函数
    void show_infomation(){
        if (m_name){
            cout << m_name << " ";
        }
        if (m_sex){
            cout << m_sex << " ";
        }
        cout << m_age << endl;
    };
private://私有访问权限
    //成员变量
    char* m_name;
    int m_age;
    char* m_sex;
};
int mainCpp(){
    char name[] = "lixi";
    char sex[] = "man";
    //定义一个对象【一个类的个体】
    Person p(name, 20, sex);
    //调用类的成员函数
    p.show_infomation();
    return 0;
}

//类是属性和行为结合的概念,他是从c的struct转化而来的
//如果用c来表示上述C++的Person,可以用下:
typedef struct _Person{
    void(*show_infomation)(_Person* p);
    char* m_name;
    int m_age;
    char* m_sex;
}_Person;

void show(_Person* p){
    if (p->m_name){
        cout << p->m_name << " ";
    }
    if (p->m_sex){
        cout << p->m_sex << " ";
    }
    cout << p->m_age << endl;
};

int mainC(){
    char name[] = "lixi";
    char sex[] = "man";
    //定义一个结构体变量
    _Person p = { show,name, 20, sex };
    //调用结构体的函数
    p.show_infomation(&p);
    return 0;
}

int main(){
    mainCpp();
    mainC();
    return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值