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;
	}
};
相关推荐
别动我齐刘海3 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
程序员老陆3 小时前
C++ std::promise深度解析
c++·程序设计
青少儿编程课堂3 小时前
迪杰斯特拉(Dijkstra)算法:单源最短路与赛场路线规划
c++·python·算法·bfs·信息学竞赛
沫璃染墨5 小时前
《Qt从零入门系列(十三):QSS样式表详解——从选择器与层叠规则到控件美化实战》
开发语言·css·c++·qt·ui·qt6.3·qss
道尔柯南6 小时前
C++ 面向对象编程入门:类和对象(上)
开发语言·c++·算法
aqiu1111117 小时前
【C++算法打怪专栏】C++ `unordered_set` 常用初始化与插入方法总结
开发语言·c++·算法
Terra.K8 小时前
高精度阶乘求和模板深度解析
开发语言·c++·算法
智码看视界8 小时前
C++智能指针全景剖析及面试20问
开发语言·c++·深度学习·面试·内存管理·智能指针
Peregrine98 小时前
C++ - > 类和对象
java·c++·算法
‎ദ്ദിᵔ.˛.ᵔ₎10 小时前
c++11:fuction包装器
开发语言·c++