C++ 类定义

C++ 类定义

定义一个类需要使用关键字 class,然后指定类的名称,并类的主体是包含在一对花括号中,主体包含类的成员变量和成员函数。

定义一个类,本质上是定义一个数据类型的蓝图,它定义了类的对象包括了什么,以及可以在这个对象上执行哪些操作。

以下实例我们使用关键字 class 定义 Box 数据类型,包含了三个成员变量(可理解为属性) length、breadth 和 height:

class Box

{

public:

double length; // 盒子的长度

double breadth; // 盒子的宽度

double height; // 盒子的高度

};

关键字 public 确定了类成员的访问属性。在类对象作用域内,公共成员在类的外部是可访问的。您也可以指定类的成员为 privateprotected

定义 C++ 对象

类提供了对象的蓝图,所以基本上,对象是根据类来创建的。声明类的对象,就像声明基本类型的变量一样。下面的语句声明了类 Box 的两个对象:

Box Box1; // 声明 Box1,类型为 Box

Box Box2; // 声明 Box2,类型为 Box

格式为 数据类型(自创) 对象;

访问数据成员

类的对象的公共数据成员可以使用直接成员访问运算符 . 来访问。

length和height是自定义的成员变量属性 声明 set()和get()是自定义的成员函数(方法)属性 声明

以下是代码实战

cpp 复制代码
#include<iostream>
using namespace std;
class Box
{
	public:
		//成员变量属性 声明 
		double length;//长度
		double breadth;//宽度
		double height;//高度 
		//成员函数(方法)属性 声明
		double get(void);
		void set(double len,double bre,double hei); 
};
//成员函数定义
double Box::get(void)
{
	return length*breadth*height;
 } 
 void Box::set(double len,double bre,double hei)
 {
 	length=len;
 	breadth=bre;
 	height=hei;
 }
 int main(){
 	Box Box1;//声明(定义对象),类型为Box
	Box Box2;//声明Box2,类型为Box
	Box Box3;//声明Box3,类型为Box
	double volume=0.0;//用于储存体积
	
	//box1详述
	Box1.height=5.0;
	Box1.length=6.0;
	Box1.breadth=7.0;
	
	//box2详述
	Box2.height=10.0;
	Box2.length=12.0;
	Box2.breadth=13.0;
	
	//box1体积
	volume=Box1.height*Box1.length*Box1.breadth;
	cout<<"Box1的体积:"<<volume<<endl;
	
	//box2的体积
	volume=Box2.height*Box2.length*Box2.breadth;
	cout<<"Box2的体积:"<<volume<<endl;
	
	//box3详述
	Box3.set(16.0,8.0,12.0);
	volume=Box3.get();
	cout<<"Box3的体积:"<<volume<<endl;
	return 0; 
 	
 }

需要注意的是,私有的成员和受保护的成员不能使用直接成员访问运算符

相关推荐
学不动CV了4 分钟前
数据结构---链表结构体、指针深入理解(三)
c语言·arm开发·数据结构·stm32·单片机·链表
tan77º4 分钟前
【Linux网络编程】Socket - UDP
linux·服务器·网络·c++·udp
ejinxian15 分钟前
PHP 超文本预处理器 发布 8.5 版本
开发语言·php
GiraKoo37 分钟前
【GiraKoo】C++14的新特性
c++
软件黑马王子41 分钟前
C#系统学习第八章——字符串
开发语言·学习·c#
阿蒙Amon43 分钟前
C#读写文件:多种方式详解
开发语言·数据库·c#
悠悠小茉莉1 小时前
Win11 安装 Visual Studio(保姆教程 - 更新至2025.07)
c++·ide·vscode·python·visualstudio·visual studio
Da_秀1 小时前
软件工程中耦合度
开发语言·后端·架构·软件工程
Fireworkitte1 小时前
Java 中导出包含多个 Sheet 的 Excel 文件
java·开发语言·excel
坏柠1 小时前
C++ Qt 基础教程:信号与槽机制详解及 QPushButton 实战
c++·qt