我已经阅读了各地const
和static readonly
各个领域.我们有一些只包含常量值的类.用于我们系统中的各种事物.所以我想知道我的观察结果是否正确:
这些常量值是否应始终static readonly
适用于所有公开的内容?并且仅const
用于内部/受保护/私有值?
您有什么推荐的吗?我是否可能甚至不使用static readonly
字段,而是使用属性?
是什么区别const
,并readonly
和你使用一个比其他?
有没有办法在JavaScript中使用常量?
如果没有,指定用作常量的变量的常见做法是什么?
我正在开发一个Cocoa应用程序,并且我使用常量NSString
s作为存储我的首选项的键名的方法.
我知道这是一个好主意,因为它可以在必要时轻松更改密钥.此外,它是整个'将您的数据与逻辑分离'的概念.
无论如何,是否有一种很好的方法可以为整个应用程序定义一次这些常量?我确信这是一种简单而聪明的方式,但是现在我的课程只是重新定义了他们使用的课程.
有没有办法在Python中声明一个常量?在Java中,我们可以用这种方式创建常量值:
public static final String CONST_NAME = "Name";
Run Code Online (Sandbox Code Playgroud)
Python中上述Java常量声明的等价物是什么?
非常简单的问题:在PHP中,你什么时候使用
define('FOO', 1);
Run Code Online (Sandbox Code Playgroud)
你什么时候用的
const FOO = 1;
Run Code Online (Sandbox Code Playgroud)
这两者之间的主要区别是什么?
在C中的以下陈述中哪一个更好用?
static const int var = 5;
Run Code Online (Sandbox Code Playgroud)
要么
#define var 5
Run Code Online (Sandbox Code Playgroud)
要么
enum { var = 5 };
Run Code Online (Sandbox Code Playgroud) 在C中,可以在声明中使用字符串文字,如下所示:
char s[] = "hello";
Run Code Online (Sandbox Code Playgroud)
或者像这样:
char *s = "hello";
Run Code Online (Sandbox Code Playgroud)
那么区别是什么呢?我想知道在编译和运行时的存储持续时间实际发生了什么.
这失败了:
define('DEFAULT_ROLES', array('guy', 'development team'));
Run Code Online (Sandbox Code Playgroud)
显然,常量不能保存数组.解决这个问题的最佳方法是什么?
define('DEFAULT_ROLES', 'guy|development team');
//...
$default = explode('|', DEFAULT_ROLES);
Run Code Online (Sandbox Code Playgroud)
这似乎是不必要的努力.
我见过这样的例子:
public class MaxSeconds {
public static final int MAX_SECONDS = 25;
}
Run Code Online (Sandbox Code Playgroud)
并且假设我可以有一个Constants类来包装常量,声明它们是静态final.我几乎不知道Java,我想知道这是否是创建常量的最佳方法.