MFC array使用

// MFCArray.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "afxwin.h"
#include "afxtempl.h"

class CAnimal{
public:
    CAnimal(int leg=4);
    int m_nLeg;
public:
    void Print(){
    printf("m_nLeg:%d\n",m_nLeg);
    }
};

CAnimal::CAnimal(int leg){
    m_nLeg=leg;
}

void Array(){
    CArray<int,int> arint;
    arint.Add(10);

    CArray<CAnimal,CAnimal&> arAnimal;
   
    arAnimal.Add(CAnimal(4));
    arAnimal.Add(CAnimal(10));
    arAnimal.Add(CAnimal(5));
    arAnimal.Add(CAnimal(7));
    //不同方法获取数组值
    arAnimal[1].Print();
    //不同方法获取数组值
    CAnimal& animal=arAnimal.ElementAt(2);
    animal.Print();
    
    CAnimal& animal2=arAnimal.GetAt(3);
    animal2.Print();

    printf("获取数组的大小:%d\n",arAnimal.GetSize());
    //SETSIZE最好是在加元素之前使用 不然数据可能会丢掉
    arAnimal.SetSize(10);
    printf("设置后数组的大小:%d\n",arAnimal.GetSize());
    
    //如果是指针定义的话 用RemoveAll不会释放指针所占用空间
    //必须得DELETE parAnimal[0]; 释放
    CArray<CAnimal*,CAnimal*> parAnimal;
    parAnimal.Add(new CAnimal(6));

    arAnimal.RemoveAll();
    printf("删除后数组的大小:%d\n",arAnimal.GetSize());
    //arint.Add(10);
}
void String(){
    CStringArray arString;
    arString.Add("Test1");
    arString.Add("Test2");



    CString strValue =arString[0];
    printf(strValue);
}
int main(int argc, char* argv[])
{


    String();

    Array();
	//printf("Hello World!\n");
	return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值