C++ 中的 struct 和 Class

  1. 通常struct用于表示一组相关的数据,而Class用于表示一个封装了数据和操作的对象。如果只是用于来组织一些数据,而不涉及复杂的封装和继承关系,则struct更为直观;如果需要封装、继承等面向对象编程的特性,可以选择使用Class。
  2. struct结构体中的成员默认是共有的(public)。类中的成员默认是私有的(private)。
  3. 如果结构体没有定义任何构造函数,编译器会产生默认的无参数构造函数。如果类没有定义任何构造函数,编译器也会生成默认的无参构造函数。
cpp 复制代码
struct MyStruct{
	int x; // 默认是public
	void print(){
		cout<<"Struct method"<<endl;
	}
};

class MyClass{
public: // 如果省略public则默认y和print()是私有的
	int y;
	void print(){
		cout<<"Class method"<<endl;
	}
};
相关推荐
paeamecium23 分钟前
【PAT甲级真题】- Kuchiguse (20)
数据结构·c++·python·算法·pat考试·pat
txzrxz1 小时前
拓补排序讲解
c++·算法·图论·排序
小保CPP2 小时前
OpenCV C++基于模糊数学的图像滤波
c++·人工智能·opencv·计算机视觉
明日清晨3 小时前
VS2022禁用 NRVO/返回值优化(不调用拷贝构造函数处理方式)
c++
阿米亚波3 小时前
【C++ STL】std::array
java·开发语言·c++
choumin3 小时前
结构型模式——组合模式
c++·设计模式·组合模式·结构型模式
努力努力再努力wz3 小时前
【分布式系统与 RPC 框架系列】从单机瓶颈到远程调用:一文理解分布式架构与 RPC 原理
linux·网络·c++·分布式·网络协议·rpc·架构
神仙别闹4 小时前
基于C++实现(控制台)景区旅游管理系统
开发语言·c++·旅游
hold?fish:palm15 小时前
kv存储主从复制的设计与实现
c++·redis·后端
啦啦啦啦啦zzzz16 小时前
算法:贪心算法
c++·算法·leetcode·贪心算法