gpt4 book ai didi

c# - 静态字符串的 nameof() 运算符

转载 作者:太空狗 更新时间:2023-10-29 18:07:17 26 4
gpt4 key购买 nike

我理解 nameof() 运算符用于异常处理、日志记录等的用法。但我不理解下面直接来自某些 Microsoft 代码的示例。

public static class SessionKeys
{
public static class Login
{
public static string AccessToken = nameof(AccessToken);
public static string UserInfo = nameof(UserInfo);
}
}

这比

更有用吗
public static class SessionKeys
{
public static class Login
{
public static string AccessToken = "AccessToken";
public static string UserInfo = "UserInfo";
}
}

最佳答案

nameof 是一个在编译时计算的运算符,因此一旦您的应用程序被编译,这两种解决方案之间实际上没有区别。

但是,在这种情况下使用 nameof 有一些好处:

  • 它使字符串值不那么“神奇”。因此,该值背后的语义推理不是一些断开连接的魔术字符串,而是非常清楚的:它是变量本身的名称。
  • 名称是对名称的实际引用,因此它们都是相关联的。这允许您重构其中一个并自动影响另一个。它还使该“字符串”在查找对该变量的引用时显示为引用。所以您确切地知道它被用在哪里。

关于c# - 静态字符串的 nameof() 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36779095/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com