我一直在遵循排骨的颤振指南(fileio)(youtube) 而且我在函数readfile上遇到了这个问题,编辑器说这是死代码,但是我不知道这是什么意思
我试图在网上搜索
String readFile(String file) {
try {
File f = new File(file);
return f.readAsStringSync();
}
catch(e) {
print(e.toString());
}
}
main(List<String> arguments) {
String path = 'C:/Users/danis/Desktop';
String txtFile = 'C:/Users/danis/Desktop/test.txt';
list(path);
if(readFile(txtFile, 'Hello World\n', FileMode.APPEND));{
print(readFile(txtFile));
}
}
答案 0 :(得分:1)
DartAnalyzer可以静态推断出在任何情况下都不会执行该代码时,会警告死代码。
int fun() {
return 5;
print('x'); // dead code
}
int fun() {
if(true) {
print('x');
} else {
print('y'); // dead code
}
}
答案 1 :(得分:1)
这是一些永远不会执行的代码,因为它没有意义。
例如:
if (false) {
print("Hello World");
}
在您的情况下,您有这样的警告,因为您写道:
if (something);
请注意;
,这意味着if内无任何执行。
答案 2 :(得分:1)
由于if语句从块(;
)中分离出来后,{}
的存在,这意味着无论条件如何,该语句始终被执行。但是,该代码并不是实际执行的“死胡同”。
[a]编程语言[平均值]中的[...]无效代码[/无法访问的代码]是什么?
死代码是指无用的代码,因为它永远不会执行。如果未在任何地方调用该函数,则该函数将失效;如果在返回之后,这些语句可能会失效:
// 1
print("alive");
return;
print("dead");
// 2
if(false) print("dead");