2
У меня мало опыта на таком языке, как C#, поэтому я был бы доволен, если бы вы, ребята, могли мне помочь. Я написал этот метод в C++ с использованием библиотеки MPIR:Данные маршаллинга для C#
mpz_class SchnorrProtocol::getX(const mpz_class& r) const
{
mpz_class x;
mpz_powm(x.get_mpz_t(), this->params_.getBeta().get_mpz_t(), r.get_mpz_t(), this->params_.getP().get_mpz_t());
return x;
}
и теперь я хочу, чтобы импортировать его в C#:
#region Filter & P/Invoke
#if DEBUG
private const string DLL = "schnorrd.DLL";
#else
private const string DLL = "schnorr.DLL";
#endif
[DllImport(DLL)]
"method definition"
...... SchnorrProtocol::getX(......);
моя проблема, я не знаю, как это сделать. Не могли бы вы помочь мне?
проблема является: mpz_class является C++ класс, который Имеющийся с: #include так что стандартные операторы и различные стандартные функции являются обернутыми чтобы разрешить арифметику с этим классом. Я не знаю, как написать определение такого класса. :( –
Tatiana