zoukankan      html  css  js  c++  java
  • C++类和对象

    C++类就是为程序员提供一种建立一个新类型的工具,使这些新类型的使用能够像内部类型一样方便。

    一个类就是一个用户定义的类型,如何声明一个类,形式如下:

    class class_name {
    access_specifier_1:
    member1;
    access_specifier_2:
    member2;
    ...
    } object_names;

    示例如下:

    class Object {
    public:
    Object();
    ~Object(); //must be public
    Object(int num);
    int getNumber();
    void setNumber(int num);

    private:
    int m_num;
    };

    如何定义一个已声明的类:

    Object::Object() {
    m_num = 0;
    }
    Object::~Object() {

    }
    Object::Object(int num) {
    m_num = num;
    }

    int Object::getNumber() {
    return m_num;
    }

    void Object::setNumber(int num) {
    m_num = num;
    }



    如何实例化和使用一个类:  

    int main () {
    Object obj1;
    Object obj2(110);
    Object obj3 = Object(119);
    Object *pObj4 = new Object();
    Object *pObj5 = new Object(119);
    Object objs[10];
    printf("obj1.getNumber() = %d\n", obj1.getNumber());
    printf("obj2.getNumber() = %d\n", obj2.getNumber());
    printf("obj3.getNumber() = %d\n", obj3.getNumber());
    printf("pObj4->getNumber() = %d\n", pObj4->getNumber());
    printf("pObj5->getNumber() = %d\n", pObj5->getNumber());
    for (int i = 0; i < 10; i++) {
    printf("objs[%d].getNumber() = %d\n",i, objs[i].getNumber());
    }
    delete pObj4;
    delete pObj5;
    return 0;
    }

    struct 和union的类声明

    类可以定义不仅可以用关键字class,也可以用关键字struct和union

    class和struct的概念是相似的可用struct和class声明C++的类(即struct可以有数据成员和函数成员两者之间唯一的区别是使用关键字struct声明成员默认情况下,是public访问权限使用关键字class声明成员默认是private访问权限对于所有其他目的这两个关键字是等价的。

    union的概念struct和class声明类不同的因为union一次只能存储一个数据成员但union也可能拥有函数成员,union默认访问权限是public

  • 相关阅读:
    Go语言之进阶篇服务器如何知道用户需要什么资源
    Go语言之进阶篇请求报文格式分析
    Go语言之进阶篇实现并发聊天功能
    Go语言之进阶篇文件传输
    Go语言之进阶篇获取文件属性
    Go语言之进阶篇简单版并发服务器
    Go语言之进阶篇TCP相互通信
    Go语言之进阶篇 netcat工具的使用
    HAProxy的高级配置选项-ACL篇之匹配访问路径案例
    HAProxy的高级配置选项-ACL篇之基于文件后缀实现动静分离
  • 原文地址:https://www.cnblogs.com/ggjucheng/p/2287381.html
Copyright © 2011-2022 走看看