c++(和opencv)如何把局部变量变成全局变量的功能
今天在开发opencv项目的时候,需求是:视频实时播放,鼠标点击某处,新窗口放大播放局部视频。
这里遇到的问题是:需要用opencv获取鼠标。
背景:opencv有自带的鼠标回调函数,而且它的on_Mouse()函数是封装好的,有五个形参,其中就有鼠标的位置x和y在形参中。
可是 on_Mouse()函数是void型,没有返回值。
问题转化为:我需要用on_Mouse()函数有的鼠标位置,传到另一个函数(要使用的地方)。
解决办法是:定义两个全局变量,在on_Mouse()函数内部传出来。
int X, Y;//鼠标坐标全局变量
下面是opencv自带的配合鼠标函数的函数on_Mouse()。需要的就是两个形参
void on_Mouse(int event, int x, int y, int flag, void*ustc) {//形参x,y是鼠标点击的位置//需要鼠标的位置if (event == CV_EVENT_LBUTTONDOWN){cout << "下面进行鼠标位置的获取" << endl;cout << "鼠标坐标为:" << x << "和" << y << endl;X = x;//把局部变量传出来变成全局变量Y = y;}
}
在主函数中使用鼠标回调函数
setMouseCallback("src1", on_Mouse, 0);//调用鼠标回调函数
//这里的窗口名称是src1
记录一下自己踩得坑。怎么把局部变量传出来。或者传出来了,用的时候用错了。
c++(和opencv)如何把局部变量变成全局变量的功能相关推荐
- C++ 笔记(06)— 变量作用域(局部变量、全局变量、静态局部变量)
作用域是程序的一个区域,一般来说有三个地方可以定义变量: 在函数或一个代码块内部声明的变量,称为局部变量: 在函数参数的定义中声明的变量,称为形式参数: 在所有函数外部声明的变量,称为全局变量: 1. ...
- 理解LoadRunner中的局部变量和全局变量
以下内容均选自个人作品:<精通软件性能测试与LoadRunner实战> 在C语言中,变量有效性的范围称变量的作用域.不仅对于形参变量,C语言中所有的量都有自己的作用域,按作用域范围不同 ...
- 静态局部变量和全局变量的区别!
静态局部变量和全局变量的区别! C++变量根据定义位置的不同,具有不同的作用域,作用域可分为6种:全局作用域,局部作用域,语句作用域,类作用域,命名作用域和文件作用域. 1.从作用域看: (1)全局变 ...
- java 全局变量_Javascript中的局部变量、全局变量的详解与var、let的使用区别
前言 Javascript中的变量定义方式有以下三种方式: 1.直接定义变量,var与let均不写: a = 10; 2.使用var关键字定义变量 var a = 10; 3.使用let关键字定义变量 ...
- python变量进阶(可变不可变,局部变量和全局变量)
变量进阶(理解) 目标 变量的引用 可变和不可变类型 局部变量和全局变量 01. 变量的引用 变量 和 数据 都是保存在 内存 中的 在 Python 中 函数 的 参数传递 以及 返回值 都是靠 引 ...
- C语言局部变量与全局变量
变量,可以定义在函数内,也可以定义在函数外 定义在不同位置的变量,作用域也是不同的 C语言中,按作用域范围可以分为局部变量.全局变量2种类型 局部变量 局部变量就是在函数内部声明的变量,它只在本函数内 ...
- Python中局部变量和全局变量的详解
1.局部变量 定义: 局部变量,就是在函数内部定义的变量 约束: 其作用范围是这个函数内部,即只能在这个函数中使用,在函数的外部是不能使用的 实例: def test1():a = 120print( ...
- A13在c语言中是合法变量吗,C语言中局部变量和全局变量等在内存中的存放位置.doc-资源下载在线文库www.lddoc.cn...
C语言中局部变量和全局变量_等在内存中的存放位置.doc C 语言中局部变量和全局变量 变量的存储类别static,extern,auto,register 8.8 局部变量和全局变量在讨论函数的形参 ...
- Python老男孩 day15 函数(二) 局部变量与全局变量
https://www.cnblogs.com/linhaifeng/articles/6113086.html -------------------------------------- 五.局部 ...
最新文章
- php运行显示中文乱码,如何解决PHP界面显示中文乱码的问题
- amd一点也不yes_最不值得买的高端显卡!RTX3080从真香变成了鸡肋?
- spring-wind 搭建过程问题记录
- vista下载_Vista和视图在游戏设计中的功能
- 原生JS获取元素属性值
- redis事务乐观锁,watch
- C1083: 无法打开包括文件: “stdafx.h”: No such file or directory
- SaaS服务和个性化需求,就不能鱼和熊掌兼得吗?
- 基于Java的超市商品管理系统
- 软件构造之java类图
- 算法题:矩阵修改为黑白矩阵
- np.ones用法总结
- angular2 全局路由守卫_Angular 路由守卫
- java实现大文件切割分片
- OVER(PARTITION BY)函数介绍
- c语言用while语句计算圆周率的近似值,编程计算圆周率的近似值
- 如何升级自己的思维,成为你想成为的自己? ----《少有人走的路》讀後感
- 2017免费发布信息平台排行大全!
- ajax、php、json异步数据处理
- oracle创建用户赋予访问某一视图的权限
热门文章
- 并查集(disjoint set)的实现及应用
- C#学习笔记——数据库篇(1)
- numix Docky
- 获取异常信息e.printStackTrace()的内容
- window7 telnet localhost 5554
- wordpress如何让百度快速收录_百度快速收录权益获取与使用说明
- linux查看usb设备文件,linux – 确定USB设备文件路径
- java 反射 Gc_深入浅析Java反射机制
- 【控制】《多智能体系统一致性协同演化控制理论与技术》纪良浩老师-第14章-带通信和输入时延的异构竞争多智能体系统分组一致性
- Ardino基础教程 20_红外遥控