zoukankan      html  css  js  c++  java
  • 类的产生原型是struct

    C中, struct: 结构体可以让用户自定义数据类型.

    C++中的结构体拓展了struct的使用范围.

    class对象是由struct演化而来的,struct是语法的来源.

    C++中 struct中不仅可以定义数据类型,还可以与类一样, 定义操作.

    因此:

    (1)  struct可以看成是一种类似于class的标识符.

    struct Student{  //结构体声明
       char name[10];
       int age;
       ... ....  
    };

      使用C语言定义结构体变量 stu 时, 必须用 struct  Student  stu; C++中可以直接用Student stu.

      C中如果要也要如此用,必须先用typedef 给结构体起个"别名"为Student,才能用Student stu定义变量.

    备注: 枚举类型使用同样如此: C中必须用 enum Type t 定义变量 t , C++可以用Type;

    什么是对象?

    以下摘自《C++编程思想》(美)Bruce Eckel Chuck Allison著

    “把函数放进结构中是从C到C++中的根本改变, 这引起我们将结构作为新概念去思考。

    在C中, struct是数据的凝聚,它将数据捆绑在一起,使得我们可以将它们看作一个包。

    但这除了能使编程方便之外,别无其它。对这些结构进行操作的函数可以在别处。

    然而将函数也放在这个包中,结构就编程了新的创造物了,它既能描写属性(就向C struct能做的一样),

    又能描述行为,这就形成了对象的概念。”

  • 相关阅读:
    洛谷题单 算法1-1 模拟和高精度
    第十一届蓝桥杯 b组
    jdk的安装、java环境配置
    哈夫曼树 java
    机器学习基石8-Noise and Error
    Java基础12-工具类;变长参数;IO
    机器学习基石7-The VC Dimension
    Java基础11-List;Set;Map
    Java基础10-集合
    机器学习基石6-泛化理论
  • 原文地址:https://www.cnblogs.com/blackandwhite/p/13151884.html
Copyright © 2011-2022 走看看