C++ CImg 库错误 C2665 有什么问题?

C++ CImg Library Error C2665 What is the problem?

cimg error

错误代码:

Severity Code Description Project File Line Suppression State Error C2665 'cimg_library::cimg::rand': none of the 4 overloads could convert all the argument types goruntuisleme C:\Users\sasniac\source\repos\goruntuisleme\goruntuisleme\CImg.h 25469

代码:

#include <iostream>
#include "CImg.h"

using namespace cimg_library;

int main()
{
 std::cout << "Hello World!\n";
}

我为你测试了库。它在一些修改后工作。

1. 我想你是从官方网站下载的库 (here)

2. 以下函数中缺少某些转换为 (cimg_uint64 *) 的内容:

 static double mp_u(_cimg_math_parser& mp) {
        return cimg::rand(_mp_arg(2),_mp_arg(3),(cimg_uint64 *) &mp.rng);
 }    

此处:

static double mp_srand0(_cimg_math_parser& mp) {
        cimg::srand((cimg_uint64 *) &mp.rng);  
//...
}  

此处:

 static double mp_g(_cimg_math_parser& mp) {
    cimg::unused(mp);
    return cimg::grand((cimg_uint64 *) &mp.rng);
 }