设为首页 加入收藏

TOP

Viual C++条件语句中的实参左写
2014-11-23 18:58:43 】 浏览:3646
Tags:Viual 条件 语句 左写

学过编程的都知道,程序设计中只有三大控制结构,即顺序、循环和条件。任何的程序设计都离不开这三种结构,本次我只介绍一个关于条件语句中的小技巧——实参左写。下面以Visual C++ 6.0中的if语句为例进行说明。

现在我们用MFC来编写一个简单的画图程序,要求鼠标左键按下时,拖动鼠标,工作区即可画出鼠标的轨迹,鼠标左键松开时,停止作图。下面是我设计的各模块的代码:

首先,在View类中添加三个成员函数OnLButtonUp,OnLButtonDown,OnMouseMove,同时添加两个CPoint类的私有成员m_MyPoint和m_oldPoint,再添加一个BOOL型变量m_DownOrUp。

OnLButtonUp函数模块的代码如下:

m_DownOrUp=FALSE;

View构造函数的代码如下:

m_MyPoint=0;

m_oldPoint-0;

m_DownOrUp=FALSE;

OnLButtonDown函数模块的代码如下:

m_DownOrUp=TRUE;

m_MyPoint=point;

m_oldPoint=point;

OnMouseMove函数模块的代码如下:

CClientDC dc(this);

CPen MyPen(PS_DASHDOTDOT,1 ,#0000ff);

CPen *oldPen=dc.SelectObject(&MyPen);

if(m_DownOrUp=TRUE)

{

dc.MoveTo(m_MyPoint);

dc.LineTo(point);

m_MyPoint=point;

}

做完了上面的工作,心里很高兴的就去运行了,运行后鼠标没有按下客户区也画鼠标轨迹线,考虑后,就去看看是不是哪块代码写错了,可是翻来覆去怎么也没发现哪有错误,最后把每行代码都仔细都审查了一遍,费了好大力气才发现if的条件写错了,把"=="写成了"=",我们换过来想,假如我们把TRUE写在前面,如果等号写成赋值符号,编译器就会报错,我们也会及早的发现问题,会给软件开发过程节省很大的时间和物力。

之所以这样写,是因为这两个符号有完全不同的意思,一个等号就是赋值的意思,把右边的值赋给右边,而在这里实参是不可以放在左边的;而两个等号表示对比,看是否相等,实参可以放在左边。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇VC中字符串换行 下一篇在VC下手工为对话框添加自定义消息

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目