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

  • 相关阅读:
    [转]使用Java Mission Control进行内存分配分析
    JDE开发端安装问题(JDE初步卸载重装)
    JDE开发端安装笔记
    [转]JDE910--jas.ini参数说明
    [转]十个常见的缓存使用误区及建议
    JDE910笔记2--OMW项目建立及简单使用
    JDE910笔记1--基础介绍及配置
    [转] 编程之美--字符串移位包含的问题
    关于JDBC
    [转]何时使用委托而不使用接口(C# 编程指南)
  • 原文地址:https://www.cnblogs.com/ggjucheng/p/2287381.html
Copyright © 2011-2022 走看看