⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 arrayclassexample.cpp

📁 MFC 函数实用手册
💻 CPP
字号:
// ArrayClassExample.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include "ArrayClassExample.h"
#include "afxtempl.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#endif


// 唯一的应用程序对象

CWinApp theApp;

using namespace std;

int _tmain(int argc, TCHAR* argv[], TCHAR* envp[])
{
	int nRetCode = 0;

	// 初始化 MFC 并在失败时显示错误
	if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0))
	{
		// TODO: 更改错误代码以符合您的需要
		_tprintf(_T("致命错误:MFC 初始化失败\n"));
		nRetCode = 1;
	}
	else
	{
		// TODO: 在此处为应用程序的行为编写代码。
		
		// 创建一个队列
		CArray<int, int> myArray;
		if( myArray.IsEmpty() )
			myArray.SetSize(5);

		// 输出当前队列元素个数和上限
		_tprintf( "队列1共有 %d 个元素,上限为: %d\n", myArray.GetSize(), myArray.GetUpperBound() );

		// 设置队列1第一个元素的数值
		myArray.SetAt(0, 1);

		// 输出队列所有元素的数值
		for(int i=0; i < myArray.GetCount(); i++)
			_tprintf("队列中第%d个元素的数值为: %d\n", i+1, myArray.GetAt(i) );

		// 向队列添加新元素
		int j = 6;
		_tprintf("\n添加新元素,数值为: %d\n", j);
		myArray.Add(j);

		// 输出队列1中元素个数
		_tprintf("队列1共有 %d 个元素。\n", myArray.GetCount() );

		// 创建新的队列
		CArray<int, int> myArray2;

		// 向新队列添加一个元素,数值为 7
		myArray2.Add(7);

		// 设置队列2中第2个元素的数值,如果队列元素小于2-1,则增加队列元素
		myArray2.SetAtGrow(2, 3);

		// 删除队列2第2个元素
		myArray2.RemoveAt(1);

		// 将队列2添加的队列1的末端
		myArray.Append( myArray2 );
		_tprintf("\n将队列2添加到队列1的末端。");

		// 输出队列1中元素个数
		_tprintf("队列1共有 %d 个元素。\n", myArray.GetCount() );

		// 输出队列1所有元素的数值
		// 获得队列头元素的指针
		int* nValue = (int*)myArray.GetData();
		for(i = 0; i < myArray.GetCount(); i++,/*将当前指针移动一个位置*/nValue++)
			// 输出当前指针的数值
			_tprintf("队列中第%d个元素的数值为: %d\n", i + 1, *nValue );

		// 向队列插入一个新元素
		_tprintf("\n向队列1中第2个元素前插入新元素,数值为2。\n");
		myArray.InsertAt(1, 2);

		// 输出队列1中第二个元素的数值
		_tprintf("当前队列中第2个元素的数值为: %d\n", myArray.ElementAt(1) );

		// 复制队列2到队列1中
		myArray.Copy( myArray2 );
		_tprintf("\n将队列2复制到队列1中。\n");

		// 释放队列1占用的多余空间
		myArray.FreeExtra();

		// 删除队列2所有元素并释放空间
		myArray2.RemoveAll();
		myArray2.FreeExtra();

		// 输出队列1中元素个数
		_tprintf("队列1共有 %d 个元素。\n", myArray.GetCount() );

		// 输出队列1所有元素的数值
		for(i=0; i < myArray.GetCount(); i++)
			_tprintf("队列中第%d个元素的数值为: %d\n", i+1, myArray.GetAt(i) );

	}
	// 调用getchar()函数使程序不至于运行完立即退出,以便查看输出结果
	getchar();
	return nRetCode;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -