我正准备进行安全检查,并找到了一个说明要避免不安全的可变初始化的观点。 任何人都可以用一个例子(用任何编程语言)解释我什么类型的初始化会变得不安全?
从我的研究中提供更多输入:
根据安全编码标准,不应遵循不安全的变量初始化。除了我的研究之后,单词可能不会告诉任何事情,对于项目要求,有些情况下你必须使用直接与操作系统交互的调用(通常由JVM,没有用户干预的CLR),如内存分配等。
第二点与@Soner评论的相关 - > msdn.microsoft.com/en-us/library/t2yzs44b.aspx。
很抱歉与变量初始化相混淆,它也使我感到困惑,这也是我将其作为一个问题发布的原因。
答案 0 :(得分:1)
我很确定这是什么意思
int variable;
for(int i=0; i++; i<4){
variable+=i; //Compilation error, garbage or expected result, depending on language
}
在这种情况下,变量没有初始值,可能等于零。或者可能含有垃圾。有些语言不允许这样做(java局部变量)或者至少会给你一个警告。其他一些语言允许这样做,并保证初始值为零或null(java实例字段)。 http://blog.ajduke.in/2012/03/25/variable-initialization-and-default-values/