中易网

c++编程制图

答案:2  悬赏:50  
解决时间 2021-03-21 07:55
为什么在选用新画笔的时候要同时将原先的画笔保存起来
例如

CPen *pPen,*pOldPen;
CPoint p1(15,15),p2(220,220);
int ps[6]={PS_SOLID,PS_DASH,PS_DOT,PS_DASHDOT,PS_DASHDOTDOT,PS_INSIDEFRAME};
int i;
pDC->SetMapMode(MM_TEXT);
pDC->SetViewportOrg(0,0);

for(i=0;i<6;i++)
{
pPen=new CPen(ps[i],0,RGB(0,0,0));
pOldPen=pDC->SelectObject(pPen);
pDC->Rectangle(CRect(p1,p2));
p1.Offset(12,12);
p2.Offset(-12,-12);
pDC->SelectObject(pOldPen);
delete pPen;

段代码中pOldPen=pDC->SelectObject(pPen);和 pDC->SelectObject(pOldPen); 都是什么意思 尤其是第一句不太明白
最佳答案
SelectObject这个函数就是选择另一种画笔 他的参数就是新画笔的指针 返回值是旧画笔的指针 所以用poldpen保存返回值 以保证再换回原来的画笔 因为除了你这个地方画图外可能程序的其他部分也要画图而不希望其他人随便改变画笔 所以你画完了就换回原来的
全部回答

#include<iostream> using namespace std; int main() {  int num[10];  int sum=0;  int count=0;  cout<<"input ten integers:";  for(int i=0;i<10;i++)  {   cin>>num[i];  }  for(int k=0;k<10;k++)  {   if(num[k]>3&&num[k]<100)   {    count++;    sum+=num[k];   }  }  if(sum==0) cout<<"the result is 0!"<<endl;  else cout<<"the result is:"<<(double)sum/count<<endl;  return 0;   }

他们有的答案好像忘了考虑没有数字在3到100中的情况,所以不完善,程序在被除数为零时会抛出异常的!

我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
唐朝时候,文武百官上朝手里拿的牌子是什么?
淘宝开店认证后那店给别人对自己有害么
山西联通国企招聘报名去哪个网报名
c语言,改错,请问,蓝色箭头处,哪里出错了
2013年唐山市丰南区招聘中小学教师准考证发放
旧的席梦思床垫有何处理方法。
鸡西今道堂总是组织中老年人聚会赠礼物,最后
哪些行业最适合攻读在职MBA
丰田海狮空气滤芯在那里
∫e∧(a/x)×(c-bx)²dx积分结果是什么?
淮宁驾校哪个教练人好啊 ~?有在那学过的么?
淘宝网收到假货 不想退货 卖家不同意买家的退
在青岛报一个考研培训班大约需要多少钱?
手机淘宝怎么追平呢
2016年凤冈县招聘乡镇事业单位面试时间?
推荐资讯
为什么我QQ的IP老乱跑?
梦见钓鱼钓了好多鱼和好多大螃蟹和一个巨型海
如何不让别人看到自己贴吧的资料
颤舌音怎么发?
请问这是什么车
国内屈臣士万宁有没有美肌之志卖哇???
有没有人知道里外网的家居怎么样啊?
汝阳小店上口加油站地址在哪,我要去那里办事
国际货运代理的操作员的工作有哪些?详细点,
有几个人叫刘振方
我想做投资担保理财工作,应聘理财顾问,请问
据《华阳国志》记载,公元前3世纪修筑的水利
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?