C++ 中的包装类

Suraj P 2023年1月30日 2022年4月20日
  1. C++ 中包装类的定义
  2. 为什么在 C++ 中使用包装类
C++ 中的包装类

本文将介绍 C++ 中的包装类及其使用位置。

C++ 中包装类的定义

包装类是包装托管资源的一种特殊类型的类。让我们看一个例子来更好地理解它。

示例代码:

class int_wrapper
{
	public:
		int_wrapper(int value=0):
	    myPtr(new int(value))
	    {

		}

		~int_wrapper()
		{
			delete myPtr;
		}


	private:
		int* myPtr;
};

现在上面的类包装了一个指向 int 的指针。所有资源都应该以某种方式包装以保持清洁(析构函数会自动执行此操作)和正确性。

这种模式通常被称为资源获取即初始化(RAII)。所以这个想法是为清洁绑定一个析构函数。

例如,我们包装了 C 语言的许多功能以获得面向对象的接口而不是过程接口。

假设我们有一个函数 fun()

void fun()
{
cout<<"hero";
}

包装类将如下所示。

class temp
{
void fun()
{
cout<<"hero";
}
};

为什么在 C++ 中使用包装类

让我们看一个需要包装类的例子。

假设一家公司使用不同类型的相机。现在每个相机制造商都会有不同的功能来使相机工作。

现在,如果开发人员想要在这些摄像头上构建应用程序或添加额外功能,一种方法是为每种摄像头类型构建和编写单独的代码,或者编写一个具有额外功能的包装类,以包装现有的代码摄像头。

Author: Suraj P
Suraj P avatar Suraj P avatar

A technophile and a Big Data developer by passion. Loves developing advance C++ and Java applications in free time works as SME at Chegg where I help students with there doubts and assignments in the field of Computer Science.

LinkedIn GitHub

相关文章 - C++ Class