C++中 模板使用案例

使用模板写函数可以给多个类型使用,这样就能减少代码量。

#define _CRT_SECURE_NO_WARNIGS
#include <iostream>

using namespace std;

//对char类型和int类型数组进行排序
  
//打印函数
template <class T>
void PrintArray(T* arr, int len) {
	for (int i = 0; i < len; i++)
	{
		cout << arr[i] << ends;
	}
	cout << endl;
}

//排序
template <class T> 
void MySort(T* arr, int len) {
	for (int i = 0; i < len-1; i++)
	{
		for (int j = i+1; j < len; j++)
		{
			if (arr[i]>arr[j])
			{
				int temp = arr[i];
				arr[i] = arr[j];
				arr[j] = temp;
			}
		}
	}
}


int main(void)
{
	//数组
	int arr[]={ 23,4,5,6,8,1,3 };
	//数组长度
	int len = sizeof(arr) / sizeof(int);
	//排序之前
	cout << "排序之前为:";
	PrintArray(arr, len);
	//排序
	MySort(arr, len);
	//排序之后
	cout << "排序之后为:";
	PrintArray(arr, len);

	//数组
	char chArr[] = { 'a','c','b','p','t','w','z' };
	//数组长度
	len = sizeof(chArr) / sizeof(char);
	//排序之前
	cout << "排序之前为:";
	PrintArray(chArr, len);
	//排序
	MySort(chArr, len);
	//排序之后
	cout << "排序之后为:";
	PrintArray(chArr, len);

	return 0;
}

程序运行结果如下
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43778462/article/details/98870879