zoukankan      html  css  js  c++  java
  • 几个.NET方面的问题

    这几天又拿来《CLR via C#》翻看,想了几个.NET方面的问题,加上在公司和同事们交流时遇到的问题。大家有兴趣可以看看,能不能回答上来呢?

    1.       为什么要显式地关闭StreamWriter

    2.       如何正确地重写GetHashCode方法?(这个是最简单的)

    3.       C#编译器为什么要用callvirt指令调用实例的非虚方法?

    4.       struct可以继承吗?为什么?可以有虚方法吗?为什么?

    5.       什么时候用const,什么时候用static readonly?他们有什么区别?

    6.       C#为什么要提供析构函数?或者说什么时候用析构函数比较合理?

    7.       有时,程序的Debug Build可以正常运行,而Release Build不能正常运行。一般可能会是什么原因?

    其中1, 2, 3, 5, 7可以在《CLR via C#》中分析出答案。其它的……大家讨论讨论吧。尤其是第4个问题。可能有人认为这种问题没有意义。语法如此,怎么规定的就怎么用就是了。但是C#或CLR团队这么规定一定会有他们的想法,他们的理由,如果不这样一定有什么问题。

  • 相关阅读:
    webpack4 plugins 篇
    webpack4 打包静态资源
    babel 7 简单指北
    JS: 深拷贝
    JS: 数组的循环函数
    async await 的执行
    redux
    TCP通信
    理解Javascript的原型和原型链
    「译」forEach循环中你不知道的3件事
  • 原文地址:https://www.cnblogs.com/nankezhishi/p/Dotnetquestions.html
Copyright © 2011-2022 走看看