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;
	}
};
相关推荐
少司府19 小时前
C++进阶:红黑树
开发语言·数据结构·c++·b树·二叉树·红黑树
汉克老师19 小时前
GESP6级C++考试语法知识(五十五、动态规划----背包问题(八、混合背包)
c++·动态规划·dp·背包问题·gesp六级·混合背包问题
特种加菲猫19 小时前
哈希表的实现
开发语言·c++
玖釉-19 小时前
nvpro_core2 详解:NVIDIA Vulkan / OpenGL 图形样例背后的现代 C++ 基础库
c++·windows·图形渲染
不会C语言的男孩19 小时前
C++ Primer 第19章:特殊工具与技术
数据结构·c++
不会C语言的男孩19 小时前
C++ Primer 第18章:用于大型程序的工具
开发语言·c++
星恒随风20 小时前
C++ 类和对象入门(三):拷贝构造、赋值运算符重载和深浅拷贝
开发语言·c++·笔记·学习
Cx330❀20 小时前
【MySQL基础】库与表的全面操纵指南
linux·服务器·网络·数据库·c++·mysql
凡人叶枫20 小时前
Effective C++ 条款03:尽可能使用 const
linux·开发语言·c++·嵌入式开发
小欣加油20 小时前
Leetcode31 下一个排列
数据结构·c++·算法·leetcode·职场和发展