0

在 MS C# 中,以下构造函数起作用:

Int64 a = 123;
BigInteger bi = new BigInteger(a);

这在 Mono 中不起作用。编译抱怨它无法从 long 转换为 BigInteger(CS1502、CS1503)。

有没有办法做到这一点?

4

2 回答 2

1

请参阅 Mono 上的 BigInteger 构造函数,http: //docs.go-mono.com/?link=T%3aMono.Math.BigInteger%2fC

BigInteger()    
BigInteger(BigInteger)  
BigInteger(byte[])  
BigInteger(uint)    
BigInteger(uint[])  
BigInteger(ulong)   
BigInteger(BigInteger, uint)    
BigInteger(BigInteger.Sign, uint)

没有构造函数接受long (which is the same as Int64)

尝试BigInteger bi = new BigInteger((ulong)a);

或者 BigInteger bi = new BigInteger((uint)a);

于 2013-02-11T21:44:14.203 回答
1

Mono.Math.BigInteger 只有构造函数接受 ulong。不是 System.Numerics.BigInteger 你要使用吗?

https://github.com/mono/mono/blob/master/mcs/class/System.Numerics/System.Numerics/BigInteger.cs

于 2013-02-11T21:48:50.037 回答