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);	
}

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

有时间继续;

相关推荐
Swxctx3 分钟前
Go版数据结构 -【4.3 AVL树】
开发语言·数据结构·golang·go版数据结构
这孩子叫逆3 分钟前
Java应用程序的服务器有哪些?
java·服务器·开发语言
多喝热水-多读书14 分钟前
Qt C++设计模式->命令模式
c++·qt·设计模式·命令模式
钢铁小狗侠29 分钟前
网络编程(13)——单例模式
c++·单例模式·网络编程
_nut_33 分钟前
makefile和CMakeLists/C++包管理器
开发语言·c++
多敲代码防脱发35 分钟前
Java数据结构链表(LinkedList详解)
java·开发语言·前端·jvm·数据结构·笔记·链表
知识分享小能手40 分钟前
mysql学习教程,从入门到精通,SQL RIGHT JOIN语句(24)
大数据·开发语言·数据库·sql·学习·mysql·数据分析
汪子熙41 分钟前
python-pptx 中 placeholder 和 shape 有什么区别?
开发语言·数据库·python
阿华的代码王国1 小时前
【JavaEE】——多线程常用类和常用数据结构(精华长文)
java·开发语言·java-ee