C++重载中括号[]运算符示例1

h文件;

cpp 复制代码
class ZZC  
{
public:
	ZZC();
	virtual ~ZZC();

	int& operator[] (int i);    //重载"[]"操作符

private:
    int myarr[6];

};

Cpp文件;

cpp 复制代码
ZZC::ZZC()
{
    int i;

    for (i = 0; i < 6; i++)
    {
        myarr[i] = i + 9;
    }
}

ZZC::~ZZC()
{

}

int& ZZC::operator[] (int i)    //返回引用,这样才可以对返回值赋值
{
    return myarr[i];
}

调用和输出;

cpp 复制代码
void CZkhView::OnDraw(CDC* pDC)
{
	CZkhDoc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);
	// TODO: add draw code for native data here
	CString str1;

	ZZC zc1;
	str1.Format("%d", zc1[1]);
    pDC->TextOut(20, 20, str1);

	zc1[4]=160;
	str1.Format("%d", zc1[4]);
    pDC->TextOut(20, 50, str1);	
}

从这简单例子看只是提供了写法上的一些方便;

有时间继续;

相关推荐
惊鸿一博7 分钟前
java_网络服务相关_gateway_nacos_feign区别联系
java·开发语言·gateway
Bruce_Liuxiaowei11 分钟前
深入理解PHP安全漏洞:文件包含与SSRF攻击全解析
开发语言·网络安全·php
成工小白12 分钟前
【C++ 】智能指针:内存管理的 “自动导航仪”
开发语言·c++·智能指针
sc写算法14 分钟前
基于nlohmann/json 实现 从C++对象转换成JSON数据格式
开发语言·c++·json
SunkingYang18 分钟前
C++中如何遍历map?
c++·stl·map·遍历·方法
Andrew_Xzw19 分钟前
数据结构与算法(快速基础C++版)
开发语言·数据结构·c++·python·深度学习·算法
库库的里昂20 分钟前
【C++从练气到飞升】03---构造函数和析构函数
开发语言·c++
momo卡21 分钟前
MinGW-w64的安装详细步骤(c_c++的编译器gcc、g++的windows版,win10、win11真实可用)
c语言·c++·windows
多多*2 小时前
LUA+Reids实现库存秒杀预扣减 记录流水 以及自己的思考
linux·开发语言·redis·python·bootstrap·lua
Wish3D3 小时前
阿里云OSS 上传文件 Python版本
开发语言·python·阿里云