吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3453|回复: 12
收起左侧

[C&C++ 转载] 【笔记】C++结构体 和类 ------新手来看看 大神勿喷

[复制链接]
IWayne 发表于 2016-5-5 14:03
本帖最后由 奋斗丶小Z 于 2016-6-6 13:45 编辑

[C++] 纯文本查看 复制代码
#include <iostream>
using namespace std;

struct father
{
    /*
    virtual bool set() = 0;
    virtual bool get() = 0;
    */
    
    virtual bool set(int a, int b) = 0;
    virtual bool get(int a, int *b) = 0;
    
};
struct jack :public father
{
    int x;
    int y;
    bool set(int a, int b);
    bool get(int a,int *p);

};

struct mack :public father
{
    int x;
    int y;
    bool set(int a, int b);
    bool get(int a, int *p);
};

struct mackson :public mack
{
    int x;
    int y;
    bool set(int a, int b);
    bool get(int a, int *p);
};
bool jack::set(int a, int b)
{
    x = a;
    y = b;
    if (a == x && b == y)
        return true;
    else
        return false;
}
bool jack::get(int a,int *p)
{
    if (0 == a)
    {
        p = &x;
        return true;
    }
    else if (1 == a)
    {
        p = &y;
        return true;
    }
    else
        return false;
}

bool mack::set(int a, int b)
{
    x = a;
    y = b;
    if (a == x && b == y)
        return true;
    else
        return false;
}
bool mack::get(int a, int *p)
{
    if (0 == a)
    {
        p = &x;
        return true;
    }
    else if (1 == a)
    {
        p = &y;
        return true;
    }
    else
        return false;
}

bool mackson::set(int a, int b)
{
    x = a;
    y = b;
    if (a == x && b == y)
        return true;
    else
        return false;
}
bool mackson::get(int a, int *p)
{
    if (0 == a)
    {
        p = &x;
        return true;
    }
    else if (1 == a)
    {
        p = &y;
        return true;
    }
    else
        return false;
}

int main()
{
    
    father *p1;
    int a=0;
    bool (father::*pf)(int a, int b) = 0;
    bool (father::*pb)(int a, int *b) = 0;

    p1 = new jack;

    pf = &father::set;
    pb = &father::get;

    (p1->*pf)(5,6);
    (p1->*pb)(1, &a);
    cout << a << endl;



    return 0;
}


这是 C++结构体 实现的 重载,多重继承,多态,虚基类,抽象类,类成员指针
主要是为了 让大家更好认识C++结构体和类的区别

看到此贴感觉太小儿科 请高抬贵手 千万别骂。右上角就行吧。。

免费评分

参与人数 2热心值 +2 收起 理由
lytalyt + 1 用心讨论,共获提升!
_Max1 + 1 记得给我也评分哦,你看我都给你评分了QWQ

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| IWayne 发表于 2016-5-6 05:33
lytalyt 发表于 2016-5-6 03:59
C++还学的不是很深  似懂非懂,楼主能解释下吗?

里面主要的难点是类成员指针 是纯虚函数和抽象类的概念。
我的理解是 C++难 主要分为两大部分
第一部分 就是 对象编程。
第二部分 我觉得是真难 前面真不算什么
那就是STL。 标准C++库。包含大量算法 容器 模板
 楼主| IWayne 发表于 2016-5-6 05:26
lytalyt 发表于 2016-5-6 03:59
C++还学的不是很深  似懂非懂,楼主能解释下吗?

行。我看很多人 都喜欢看 破解的帖子 编程的内功心法从来不过问。 舍本逐末。

这个 结构体 相当于是一个完全 public 的 对象。

对象有 三种 方式 public pirvate 和 保护的[那个单词太长 我不在编程环境下 打不出]
chrisu 发表于 2016-5-5 17:59
_Max1 发表于 2016-5-5 23:48
支持支持呦.好晚了,睡觉.
wangqiustc 发表于 2016-5-5 23:57
思路很清晰啊,学习学习
lytalyt 发表于 2016-5-6 03:59
C++还学的不是很深  似懂非懂,楼主能解释下吗?
lytalyt 发表于 2016-5-6 21:52
吾愛じ啃飯團ジ 发表于 2016-5-6 05:33
里面主要的难点是类成员指针 是纯虚函数和抽象类的概念。
我的理解是 C++难 主要分为两大部分
第一部分 ...

我先收藏了 等学到这部分内容我再来体会一下
 楼主| IWayne 发表于 2016-5-6 22:01
lytalyt 发表于 2016-5-6 21:52
我先收藏了 等学到这部分内容我再来体会一下

老师不教的。 我自己的总结,
lytalyt 发表于 2016-5-7 16:48
吾愛じ啃飯團ジ 发表于 2016-5-6 22:01
老师不教的。 我自己的总结,

我在看视频自学呢
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-9-23 09:30

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表