none
怎么对string使用new关键字来创建一个变量,使这个变量的默认值为null RRS feed

  • 问题

  • 在《精通C#》(第六版)3.4.2中有这么一段话:“所有的内建数据类型都支持默认构造函数(见第5章)。简而言之,这个特性允许我们使用new关键字来创建变量,它将变量自动设置为其默认值。”
    我知道如果定义一个字符串比如:string st;st的默认值肯定是null。

    我想问的是怎么对string使用new关键字来创建一个变量,使这个变量的默认值为null?就像:int a = new int();一样。
    2019年5月20日 7:42

答案

  • new是分配内存,null是不分配内存,你说怎么用分配内存的方法来不分配内存?这不是自相矛盾吗。如果你不想分配内存,那就直接设置string a = null。
    • 已标记为答案 hallogemer 2019年5月21日 15:16
    2019年5月20日 9:06
  • Hi hallogemer,

    正如“[-]”所说的那样,在使用new关键字创建一个变量时就为其分配内存并赋予默认值。所以如果使用了new关键字后,变量的值是不可能为null的。这里有一份Microsoft的有关默认值的官方文档你可以参考一下:默认值表(C# 参考)

    Regards,

    Kyle


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.


    2019年5月21日 2:24
    版主

全部回复