我正在制作列表,并希望在控制台中查看它。我有一个错误,它说:
Main():并非所有代码路径都返回一个值。
也许你可以帮助我?这是我的代码:
this.get('assignedAttrNames');
//the first one
// ['value', 'valuePool']
//the second one
// ['singleValue', 'valuePool']
答案 0 :(得分:3)
在Main
的末尾返回一些内容。像这样:
public static int Main()
{
List<DocPart> Parts = new List<DocPart>();
var doc = new DocConfig();
doc.Description = "bla bla";
doc.Parts = new List<DocPart>();
doc.Parts.Add(new DocPart { Title = "aaa", TexLine = @"\include{aaa.tex}" });
doc.Parts.Add(new DocPart { Title = "bbb", TexLine = @"\include{bbb.tex}" });
foreach (DocPart part in doc.Parts)
{
Console.WriteLine(part.Title);
{
Console.ReadLine();
return 0;
}
}
return -1;
}
答案 1 :(得分:1)
您收到此错误的原因是因为您声明了方法
public static int Main()
您声明它将返回int
值。但是,您只在可能永远不会运行的位置返回该值。例如,如果doc.Parts
列表为空,则永远不会运行它。因此,您需要添加代码以确保方法始终返回一些内容。
return -1;
会使错误消失。
答案 2 :(得分:0)
public static int Main()
{
List<DocPart> Parts = new List<DocPart>();
var doc = new DocConfig();
doc.Description = "bla bla";
doc.Parts = new List<DocPart>();
doc.Parts.Add(new DocPart { Title = "aaa", TexLine = @"\include{aaa.tex}" });
doc.Parts.Add(new DocPart { Title = "bbb", TexLine = @"\include{bbb.tex}" });
foreach (DocPart part in doc.Parts)
{
Console.WriteLine(part.Title);
{
Console.ReadLine();
return 0;
}
}
return 0;
}