zoukankan      html  css  js  c++  java
  • C++学习13 类class和结构体struct的区别

    C++保留了C语言的 struct,并且加以扩充。在C语言中,struct 只能包含数据成员,不能包含成员函数。而在C++中,struct 类似于 class,既可以包含数据成员,又可以包含成员函数。

    在C++中,没有抛弃C语言中的 struct 关键字,其意义就在于给C语言程序开发人员有一个归属感,并且能让C++编译器兼容以前用C语言开发出来的项目。

    C++ struct 示例:

    #include<iostream>
    using namespace std;
    struct Student{
        char *name;
        float score;
        Student(char*, float);
        void say();
    };
    Student::Student(char *name, float score){
        this->name = name;
        this->score = score;
    }
    void Student::say(){
        cout<<name<<"的成绩是 "<<score<<endl;
    }
    int main(){
        Student stu("小明", 95.5f);
        stu.say();
        return 0;
    }

    该程序可以正常编译并运行,说明 struct 默认的成员都是 public 属性的,否则不能通过对象访问成员函数。如果将 struct 关键字替换为 class,那么就会编译报错。

  • 相关阅读:
    任意进制间的转换
    判断线段相交 hdu 1086
    大数(高精度)加减乘除取模运算
    sqlserver2008透明书库加密
    数据库质疑
    sql2005 和sql2008 同时安装
    editrules
    sqlserver 表值函数
    sqlserver释放内存
    sql2008查看备份进度
  • 原文地址:https://www.cnblogs.com/Caden-liu8888/p/5797025.html
Copyright © 2011-2022 走看看