VS.Net中按 F5 时项目的生成顺序

本文探讨了在VS.NET中按F5时项目的生成顺序和调试过程。当按F5启动时,当前项目会执行生成操作,依赖项也会被生成。项目生成顺序受项目依赖项设置影响,VS.NET默认按照依赖关系逆序生成。此外,详细阐述了生成解决方案、重新生成、逐语句调试等操作的区别,并讨论了空公共无参构造函数在调试中的作用以及C#的执行模式。
摘要由CSDN通过智能技术生成

读别人的代码,我在一个类的无参公共构造函数里加了个MessageBox,但单步跟踪到这个构造函数的时候,并未执行MessageBox这句话就跳过去了,这让我好生奇怪:它有什么理由不执行呢?研究半天后恍然大悟:这是一个类库项目,而修改后我并未重新生成此类库——脑子暂时短路的结果。

但在意识到脑子短路之前,我却考虑了很多:此类继承自另一个类,难道是继承上出了问题?不厌其烦的我甚至启动Snippet Compiler,亲手写了个简单的父类、子类,包括构造函数的无参、有参、不写三种情况,把构造函数在继承中的执行方式重新复习了一遍。结果当然是一切均按预想的流程工作:构造子类对象时首先执行父类构造函数,然后再执行子类构造函数;如果子类没有构造函数,表面上看只执行了父类的构造函数,但据说实际上还执行了一个运行时提供的无参公共构造函数(书上这么说的,但跟踪不到,反正啥也没干)。

在脑子恢复正常之后,我意识到应该把VS.Net中①生成解决方案(Ctrl+Shift+F5)、②重新生成解决方案、③生成项目、④重新生成项目、⑤启动(F5)、⑥开始执行不调试(Ctrl+F5)、⑦逐语句(F11)、⑧逐过程(F10) 这些概念重新明确一下。前四个是跟目标程序的生成相关,后四个跟程序执行、调试相关。查MSDN:

①生成解决方案(Ctrl+Shift+

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值