当前位置: 首页 > news >正文

快站建站教程中国空间网站

快站建站教程,中国空间网站,wordpress it企业模板,青岛市崂山区建设局网站上一篇: C#,入门教程(30)——扎好程序的笼子,错误处理 try catchhttps://blog.csdn.net/beijinghorn/article/details/124182386 Visual Studio、C#编译器以及C#语法所支持的预处理指令,绝对是天才设计。 编译程序的时候会发现&am…

上一篇:

 C#,入门教程(30)——扎好程序的笼子,错误处理 try catchicon-default.png?t=N7T8https://blog.csdn.net/beijinghorn/article/details/124182386

Visual Studio、C#编译器以及C#语法所支持的预处理指令,绝对是天才设计
编译程序的时候会发现,程序可以编译成 bebug 和 release 模式,分别保存于相应的文件夹。
编写工业软件,一定有下面两个必然的需求。

一、程序的调试版本与正式版本

有些代码,仅用于调试(debug)版本,比如一些中间结果、调试信息的输出;

在正式(release )版本中,这些代码不应该被编译。

仅仅出现于 调试版本的代码,可以用户 #if DEBUG #endif 包括起来。

#if DEBUGLog.Write("DEBUG LINE 001");#endif

同理,仅仅出现于正式版本的代码:

#if RELEASEFile.Write("result.dat", dataBuffer, Encoding.UTF8);#endif

二、不同版本程序的简约管理

工业软件的每一“段”代码,都属于“千锤百炼”,会有多个版本。
保存不同的版本,可以通过版本控制、文件控制等等很多方式。
但其中最有效与直接,程序员乐于接受的却是用“预处理指令”。

计算两点之间的距离,第一个版本:

public int Distance(int ax, int ay, int bx, int by)
{return (int)Math.Sqrt((ax-bx)*(ax-bx)+(ay-by)*(ay-by));
}

这个版本,显然有问题,可以改进:

#if _VERSION_01_
public int Distance(int ax, int ay, int bx, int by)
{return (int)Math.Sqrt((ax-bx)*(ax-bx)+(ay-by)*(ay-by));
}
#endifpublic int Distance(int ax, int ay, int bx, int by)
{int dx = ax - bx;int dy = ay - by;return (int)Math.Sqrt(dx * dx + dy * dy);
}

注意,这里并没有删除就的代码,而是用一个未定义名称的预处理语句包括起来了。

第一个算法的代码,不会被编译。

继续改进:

#if _VERSION_01_
public int Distance(int ax, int ay, int bx, int by)
{return (int)Math.Sqrt((ax-bx)*(ax-bx)+(ay-by)*(ay-by));
}
#endif#if _VERSION_02_
public int Distance(int ax, int ay, int bx, int by)
{int dx = ax - bx;int dy = ay - by;return (int)Math.Sqrt(dx * dx + dy * dy);
}
#endifpublic int Distance(int ax, int ay, int bx, int by)
{int dx = ax - bx;int dy = ay - by;int dd = dx * dx + dy * dy;if(dd == 0) return 0;return (int)Math.Sqrt(dd);
}

--------------------------------------------------------
POWER BY TRUFFER.CN

下一篇:

C#,入门教程(32)——程序运行时的调试技巧与逻辑错误探针技术与源代码icon-default.png?t=N7T8https://blog.csdn.net/beijinghorn/article/details/126014885

http://www.yayakq.cn/news/119637/

相关文章:

  • 网站建设调研论文南通网站建设苏鹏网络
  • 汽车网站建设报价顺德医疗网站建设
  • 网站建设费用计入什么会计科目做卡贴和果冻贴的网站
  • 免费做会计试题网站ps响应式网站设计尺寸
  • seo营销网站的设计标准长春做网站建设的公司
  • doooor国外设计网站wordpress视频播放代码
  • 可以中英切换的网站怎么做wordpress如何安装插件
  • 定制搭建网站深圳市住房和建设局招标公告
  • 17做网店这个网站好不好wordpress 301插件
  • 网站开发过程的分工什么是网站推广策略
  • 网站没排名的原因全球最大的外贸平台
  • 江阴建设银行网站公司图片
  • 如何使用网站模板建设网站一个网站怎么优化
  • 自己建设博客网站做投标网站条件
  • 云主机怎么建网站中科时代建设官方网站
  • 还能做网站的分类网站制作能在家做吗
  • 抚顺网站开发招聘新手如何制作网站
  • 给钱做任务的网站如何在网站做淘宝页面
  • 个人建网站步骤西安做北郊做网站
  • 深圳网站建设与网站制作网站结构及内容建设策略
  • 泰安哪家做网站好跨境电商网站平台
  • 汕头建设免费网站济南装修网
  • 网站开发所需要的时间 知乎镇海区建设交通局网站进不去了
  • 在网站上做漂浮株洲企业关键词优化最新报价
  • 电子商务网站建设岗位要求这样建立网站
  • 厦门网站建设方案外包wordpress 免费 主题下载
  • logo网站设计素材长治网站开发
  • 网上做任务的网站有哪些内容在那个网站做定制旅游
  • 如何做手机app软件嘉定网站设计制作优化排名
  • 宿州集团网站建设卓越高职院建设网站