C 语言

关注公众号 jb51net

关闭
首页 > 软件编程 > C 语言 > c++ struct class

c++中struct和class的区别小结

作者:wniuniu_

在C++中,class和struct都是用于定义自定义数据类型的关键字,本文主要介绍了c++中struct和class的区别小结,具有一定的参考价值,感兴趣的可以了解一下

前言

在C++中,class和struct都是用于定义自定义数据类型的关键字,但它们之间有一些区别。这些区别主要涉及成员的默认访问权限和继承。

正题

成员的默认访问权限:

继承:

以下是一个示例,演示了class和struct之间的区别:

#include <iostream>
class ClassExample {
    int privateMember;
public:
    int publicMember;
    ClassExample() : privateMember(0), publicMember(0) {}
    void ShowPrivate() {
        std::cout << "Private: " << privateMember << std::endl;
    }
};
struct StructExample {
    int privateMember;
public:
    int publicMember;
    StructExample() : privateMember(0), publicMember(0) {}
    void ShowPrivate() {
        std::cout << "Private: " << privateMember << std::endl;
    }
};
int main() {
    ClassExample classObj;
    StructExample structObj;
    classObj.publicMember = 42;
    structObj.publicMember = 42;
    classObj.privateMember;   // 无法访问,因为 privateMember 是 private 的
    structObj.privateMember;  // 可以访问,因为 privateMember 是 public 的
    return 0;
}

总之,class和struct的主要区别在于默认的成员访问权限和继承访问权限。然而,这两者在其他方面都可以用来定义类,包括成员变量、成员函数、构造函数等。选择使用哪个关键字取决于你希望如何组织和访问类的成员。

到此这篇关于c++中struct和class的区别小结的文章就介绍到这了,更多相关c++ struct class内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文