我的代码片段是
private static void parseEquationArgs ( string [] cargs, Dictionary<int,Int64> argdic )
{
// cargs: Command-line arguments
// argdic: Dictionary in which to place the equation arguments
Int64 thisval;
for ( int k = 1, n = cargs.Length; k < n; ++k )
{
// TryParse reference: https://msdn.microsoft.com/en-us/library/system.int64.tryparse(v=vs.110).aspx
if ( Int64.TryParse(cargs[k],thisval) )
{
,错误是
最好的重载方法匹配&#39; long.TryParse(string,out long)&#39;有一些无效的论点。如果我使用上面的long
代替Int64
,我会收到同样的错误。无论如何,文档说其中一个签名是
public static bool TryParse(
string s,
out long result
)
所以我不明白这里出了什么问题......
有什么想法吗?
答案 0 :(得分:0)
您收到错误是因为您没有使用out
修饰符。这是必需的,你不能省略它。改变
if ( Int64.TryParse(cargs[k],thisval) )
到
if ( Int64.TryParse(cargs[k], out thisval) )