page contents

请你来说一下C++中struct和class的区别?

轩辕小不懂 发布于 2022-01-06 14:13
阅读 546
收藏 0
分类:C/C++开发
  • c++
  • 2829
    Nen
    Nen
    - 程序员

    在C++中,class和struct做类型定义如下区别:

    默认继承权限不同,class继承默认是private继承,而struct默认是public继承

    class还可用于定义模板参数,像typename,但是关键字struct不能用于定义模板参数

    C++保留struct关键字,主要有如下原因

    保证与C语言的向下兼容性,C++必须提供一个struct

    C++中的struct定义必须百分百地保证与C语言中的struct的向下兼容性,把C++中的最基本的对象单元规定为class而不是struct,就是为了避

    免各种兼容性要求的限制

    对struct定义的扩展使C语言的代码能够更容易的被移植到C++中

    请先 登录 后评论