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;
	}
};
相关推荐
会编程的土豆2 分钟前
【数据结构与算法】空间复杂度从入门到面试:不仅会算,还要会解释
数据结构·c++·算法·面试·职场和发展
张槊哲16 分钟前
C++ 进阶指南:如何丝滑地理解与实践多线程与多进程
开发语言·c++·算法
雪度娃娃24 分钟前
Effective Modern C++——型别推导
开发语言·c++
Hello eveybody42 分钟前
介绍一下背包DP(C++)
开发语言·c++·动态规划·dp·背包dp
charlie1145141911 小时前
AwesomeQt:最小的Qt6系列迷你版本教程发布!
linux·c++·qt·c
小小de风呀1 小时前
de风——【从零开始学C++】(四):类和对象(下)
开发语言·c++·算法
CSCN新手听安1 小时前
【Qt】系统相关(一)内容简介,事件概念,事件的处理
开发语言·c++·qt
不想写代码的星星1 小时前
重识 std::tuple:一个被低估的编译期异构容器
开发语言·c++
瞎折腾啥啊2 小时前
VCPKG详细使用教程
linux·c++·cmake·cmakelists
楼田莉子3 小时前
仿Muduo的高并发服务器:LoopThread模块及其ThreadPool模块
linux·服务器·c++·后端·学习