C++ 重载括号运算符示例

重载括号运算符的写法是,

    返回值  operator() ( 表达式表 )

参数个数不限;

VC6新建一个单文档工程;
添加一个示例类,比较短,直接加到视类h文件的头部;

class A
{
public:// 重载 括号 () 运算符int operator()(int a, int b){return a + b;};// 正常的函数int add(int a, int b){return a + b;};// 重载 括号 () 运算符int operator()(int a, int b, int c){return a*b+c;}
};

 

类A重载了2次括号运算符,一次有2个参数,一次有3个参数;

调用如下;
 

void CKhczView::OnDraw(CDC* pDC)
{CKhczDoc* pDoc = GetDocument();ASSERT_VALID(pDoc);// TODO: add draw code for native data hereCString str1;A a;str1.Format("%d",a(9,10));pDC->TextOut(20,20, str1);str1.Format("%d", a.add(9,9));pDC->TextOut(20,50, str1);str1.Format("%d", a(2, 50, 9));pDC->TextOut(20,80, str1);
}

第一次和第三次是调用重载的括号运算符;第二次是调用成员函数; 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/219917.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

理解 Proxy 和 Object.defineProperty:提升你的 JavaScript 技能(下)

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

IDEA利用插件完成properties与yml的互相转换(mac与wins通用)

步骤一、插件安装 点击屏幕左上方的IDEA,然后点击Preferences(相当于wins里的settings) 进入后点击Plugins,在插件商城中搜索并安装 Convert YAML and Properties File 这个插件 二、使用 右键选择你需要转换的配置文件,选择Convert YAML …

HarmonyOS给应用添加视频播放功能

Video组件的使用 概述 在手机、平板或是智慧屏这些终端设备上,媒体功能可以算作是我们最常用的场景之一。无论是实现音频的播放、录制、采集,还是视频的播放、切换、循环,亦或是相机的预览、拍照等功能,媒体组件都是必不可少的。…

JAVA高级(后端需深入移步)

单元测试:使用Junit单元测试框架 使用Junit单元测试: 通过左侧的对❌来进行提示 Junit框架的常见注解: 反射(用于框架,也是最重要):展示框架的成员信息 由于是用于对象,即使在获取…

CDN是如何实现网络加速的?

最近很多网站用户都在谈论香港服务器的同时,也在讨论CDN加速服务的相关话题,谈论的目的就是想通过相关的设置和服 务来有一个好的上网体验,同时减少同行DDOS的攻击。 那么,对网站进行CDN加速服务到底能够让网络实现哪些功能呢&am…

低代码开发:数字化“装配线”的崛起

一、什么是低代码 首先,我们不妨从低代码开发的定义和起源说起。低代码开发(Low Code Development),指通过可视化的图形界面来进行应用程序开发和部署的方式,大大降低了开发门槛,用户不需要掌握传统文本编程语言就可以进行开发。 低代码开发起源于20世纪90年代,经历了3个发展…

力扣300. 最长递增子序列

动态规划 思路: 假设 dp[i] 为前 i 个元素构成的最长递增子序列的个数,包含 nums[i];则 dp[i] 构成序列上一个元素 nums[j] 构成最长递增子序列 dp[j],则 dp[i] dp[j] 1;如果动态取 j ∈ [0, i - 1],则选…

Github入门

简介 github是一个基于git的代码仓库,可以通过git来上传和下载代码。国内类似的有gitee。 开源项目一般会申明开源协议。我们可以基于可商用的代码开发我们自己的项目,以期进行快速开发。 一般情况下gitee上的项目基本都够我们使用了。 git基础 Git…

二叉树(接口函数的实现)

今天继续来分享的是二叉树,我们废话不多说,直接来看下面的几个接口函数,然后我们把他们实现,我们就掌握二叉树的二分之一(今天粉丝破千了,属实有点高兴了)。 typedef char BTDataType;typedef s…

OSG加载地形

这是网上下的一个代码; 先看一下代码; KeyboardHandler.h; #ifndef KEYBOARD_HANDLER_H #define KEYBOARD_HANDLER_H #include <iostream> #include <osgGA/GUIEventHandler>class keyboardEventHandler : public osgGA::GUIEventHandler { public:typedef v…

HTML插入视频和音频(详解)

&#x1f4cd;文章目录&#x1f4cd; &#x1f9c0;一&#xff0c;简介&#x1f9c0;二&#xff0c;视频(video)&#x1f367;1&#xff0c;普通的视频插入&#x1f367;2&#xff0c;在html5中嵌入视频网站视频 &#x1f9c0;三&#xff0c;音频(audio) &#x1f9c0;一&#…

linux中的od命令与hexdump命令

初步解读两个命令 在Linux中&#xff0c;"od"和"hexdump"命令都用于以十六进制和其他格式显示文件的内容。它们提供了对文件进行二进制查看和分析的功能。以下是它们的简要说明&#xff1a; od命令&#xff1a; “od”&#xff08;octal dump&#xff09;…

德语 Alt 代码表

德语的 Alt 代码表&#xff0c;请参考下图。 输入方法就是按住 Alt 键不松开&#xff0c;然后在小键盘上输入字符&#xff0c;松开 Alt 键&#xff0c;计算机就能输出上面的字符了。 德语 Alt 代码表 - 系统容器 - iSharkFly德语的 Alt 代码表&#xff0c;请参考下图。 输入方…

Spring Security(一)架构概览

一、 Spring Security 架构概览 1. Spring Security 简介 在Java企业级开发中&#xff0c;安全管理方面的框架非常少&#xff0c;一般来说&#xff0c;主要是三种方案&#xff1a; ShiroSpring Security开发者自己实现 Spring Security基于Spring框架&#xff0c;提供了一套…

Java常用注解

文章目录 第一章、Java注解与元数据1.1&#xff09;元数据与注解概念介绍1.2&#xff09;Java注解的作用和使用1.3&#xff09;注解的分类 第二章、Mybatis框架常用注解2.1&#xff09;Mybatis注解概览2.2&#xff09;常用注解MapperScanMapperSelectInsertUpdateDeleteParam结…

学习openAI 短长期AGI计划、使命、宪章、开创性研究、产品、工作待遇等

网站的设计&#xff1a;简洁而现代 主页 使命&#xff1a;Creating safe AGI that benefits all of humanity. &#xff08;比人类更聪明的人工智能系统&#xff09;&#xff08;自己实现或帮别人实现都认为是达成使命&#xff09;&#xff08;造福全人类&#xff1a;最大限…

springboot笔记

1、springboot中的缓存标签Cacheable使用场景 Cacheable 只是为了让你省略掉是使用集合来保存缓存数据的代码&#xff0c;给你的业务代码横切入缓存的逻辑.然后使用缓存的场景就是读多写少的场景&#xff0c;读操作特别频繁的话&#xff0c;还是把热点数据缓存起来&#xff0c…

36V/48V转12V 10A直流降压DC-DC芯片-AH1007

AH1007是一款36V/48V转12V 10A直流降压&#xff08;DC-DC&#xff09;芯片&#xff0c;它是一种高性能的降压变换器&#xff0c;常用于工业、汽车和电子设备等领域。 AH1007采用了先进的PWM调制技术和开关电源控制算法&#xff0c;能够高效地将输入电压从36V/48V降低到12V&…

MATLAB实现图像变换和滤波

MATLAB实现图像变换和滤波方法对具有不同特征的灰度图像进行处理 图像变换方法包括&#xff1a;DFT及IDFT&#xff0c;DCT及IDCT 图像滤波方法包括低通滤波和高通滤波 图像变换 DFT/IDFT 图像一般是二维的&#xff0c;根据二维离散傅里叶变换公式DFT&#xff0c;可以将图片…

如何使用Docker将.Net6项目部署到Linux服务器(一)

目录 配置服务器环境 配置yum 配置docker 安装.NetCore SDK6.0 发布Net6 添加Dockerfile。 发布文件。 编辑DockerFile文件 ​编辑 上传文件 安装MySql 配置服务器环境 配置yum 在配置yum之前&#xff0c;我们需要先了解yum是什么&#xff0c;yum&#xff0c;是Yellow…