C++中类的定义与使用

简介: C++中类的定义与使用

一、引言

在C++中,类是面向对象编程(OOP)的核心构造之一。类提供了一种封装数据(称为成员变量或属性)和操作数据的方法(称为成员函数或方法)的方式。通过类,我们可以创建具有相似属性和行为的对象,使得代码更加模块化和可重用。本文将介绍C++中类的定义、成员变量、成员函数以及类的实例化和使用。


二、类的定义

在C++中,类的定义使用class关键字。类定义通常包含两部分:成员变量(数据成员)和成员函数(方法)。

下面是一个简单的类定义示例,该类表示一个矩形:

cpp

 

#include <iostream> 

 

 

 

class Rectangle {

 

public: // 访问修饰符,用于指定成员的访问权限

 

// 成员变量(数据成员)

 

double width;

 

double height;

 

 

 

// 成员函数(方法)

 

Rectangle(double w, double h) : width(w), height(h) {} // 构造函数

 

double area() const { return width * height; } // 计算面积的方法

 

void setWidth(double w) { width = w; } // 设置宽度的方法

 

void setHeight(double h) { height = h; } // 设置高度的方法

 

// ... 其他成员函数 ...

 

};

在上面的示例中,Rectangle类有两个成员变量:widthheight,分别表示矩形的宽和高。它还包含四个成员函数:一个构造函数用于初始化矩形的宽和高,一个area方法用于计算矩形的面积,以及两个设置器方法setWidthsetHeight用于修改矩形的宽和高。


三、类的访问修饰符

在类定义中,可以使用访问修饰符来指定成员的访问权限。C++支持三种访问修饰符:publicprotectedprivate。默认情况下,如果不指定访问修饰符,成员将被视为private

· public:成员可以从类的外部访问。

· protected:成员可以从类的外部访问(仅限于派生类),也可以从类的内部访问。

· private:成员只能从类的内部访问。

在上面的示例中,所有成员都被声明为public,这意味着它们可以从类的外部直接访问。但在实际编程中,通常会将数据成员声明为private,并通过公共的成员函数(如设置器和获取器)来访问它们,以实现数据的封装和隐藏。


四、类的实例化与使用

要使用类,需要创建类的对象(实例)。在C++中,使用类名和一对圆括号(可以包含参数以调用构造函数)来创建对象。

下面是一个使用Rectangle类的示例:

cpp

 

int main() {

 

// 创建Rectangle对象并初始化

 

Rectangle rect(5.0, 10.0);

 

 

 

// 访问和修改对象的成员变量(如果它们是public的)

 

// 但通常我们会通过成员函数来访问和修改数据成员

 

std::cout << "Width: " << rect.width << ", Height: " << rect.height << std::endl;

 

 

 

// 使用成员函数

 

std::cout << "Area: " << rect.area() << std::endl;

 

rect.setWidth(6.0);

 

std::cout << "New Area: " << rect.area() << std::endl;

 

 

 

return 0;

 

}

请注意,尽管在上面的示例中我们直接访问了widthheight成员变量,但在实际编程中,我们通常会将它们声明为private,并通过公共的获取器和设置器方法来访问和修改它们。


五、总结

本文介绍了C++中类的定义、成员变量、成员函数以及类的实例化和使用。通过类,我们可以创建具有相似属性和行为的对象,使代码更加模块化和可重用。在定义类时,要注意使用适当的访问修饰符来指定成员的访问权限,以实现数据的封装和隐藏。在使用类时,需要创建类的对象(实例),并通过对象的成员函数来访问和修改其数据成员。

 

目录
相关文章
|
7天前
|
存储 编译器 Linux
【c++】类和对象(上)(类的定义格式、访问限定符、类域、类的实例化、对象的内存大小、this指针)
本文介绍了C++中的类和对象,包括类的概念、定义格式、访问限定符、类域、对象的创建及内存大小、以及this指针。通过示例代码详细解释了类的定义、成员函数和成员变量的作用,以及如何使用访问限定符控制成员的访问权限。此外,还讨论了对象的内存分配规则和this指针的使用场景,帮助读者深入理解面向对象编程的核心概念。
25 4
|
1月前
|
存储 编译器 C语言
C++入门2——类与对象1(类的定义和this指针)
C++入门2——类与对象1(类的定义和this指针)
29 2
|
1月前
|
C++
C++番外篇——对于继承中子类与父类对象同时定义其析构顺序的探究
C++番外篇——对于继承中子类与父类对象同时定义其析构顺序的探究
53 1
|
6月前
|
C++
C++程序中的类声明与对象定义
C++程序中的类声明与对象定义
68 1
|
2月前
|
C++
HTML+JavaScript构建一个将C/C++定义的ANSI字符串转换为MASM32定义的DWUniCode字符串的工具
HTML+JavaScript构建一个将C/C++定义的ANSI字符串转换为MASM32定义的DWUniCode字符串的工具
|
4月前
|
编译器 C++ 运维
开发与运维函数问题之函数的返回类型如何解决
开发与运维函数问题之函数的返回类型如何解决
38 6
|
3月前
|
编译器 C++
【C/C++学习笔记】C++声明与定义以及头文件与源文件的用途
【C/C++学习笔记】C++声明与定义以及头文件与源文件的用途
46 0
|
3月前
|
JSON Android开发 数据格式
Android c++ core guideline checker 应用问题之JSON compilation database的定义如何解决
Android c++ core guideline checker 应用问题之JSON compilation database的定义如何解决
|
4月前
|
机器学习/深度学习 PyTorch 算法框架/工具
C++多态崩溃问题之在PyTorch中,如何定义一个简单的线性回归模型
C++多态崩溃问题之在PyTorch中,如何定义一个简单的线性回归模型
|
5月前
|
数据安全/隐私保护 C++
C++ 中的类是一种用户定义的数据类型,用于表示具有相似特征和行为的对象的模板。
C++ 中的类是一种用户定义的数据类型,用于表示具有相似特征和行为的对象的模板。