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团队这么规定一定会有他们的想法,他们的理由,如果不这样一定有什么问题。

  • 相关阅读:
    shell 从键盘读取输入时删除输入的字符
    spring boot 下 mapper接口与xml文件映射问题
    tcpdump
    Linux TCP自连接问题
    git commit 合并到指定分支
    工作教训总结
    git 撤销修改和版本回退
    Java 注解方式校验请求参数
    JVM 监控工具——jconsole
    排查Full GC
  • 原文地址:https://www.cnblogs.com/nankezhishi/p/Dotnetquestions.html
Copyright © 2011-2022 走看看