注:座標是一個std ::對爲什麼這給我一個鏈接器錯誤? (隨機數生成使用<random>)
class Random
{
public:
Random()
{
gen.seed(rd());
};
coord rnd_coord(int x, int y)
{
std::uniform_int_distribution<> dist_x(0, x - 1);
std::uniform_int_distribution<> dist_y(0, y - 1);
coord temp;
temp.first = dist_x(gen);
temp.second = dist_y(gen);
return temp;
}
private:
static std::random_device rd;
static std::mt19937 gen;
};
然後在main.cpp中
int x;
Random R;
coord C;
C = R.rnd_coord(10, 10);
std::cout << C.first << ", " << C.second << std::endl;
std::cin >> x;
return 0;
Im做一些測試用,但我有很多的問題與它:(,tbh我沒有編程在一段時間無論如何,我想做一個幫助函數,將返回指定的範圍內的隨機座標,說功能是在「snake_utility.h」,但因爲它給了我錯誤我把它放在一個班,現在我得到鏈接器錯誤:
錯誤1個錯誤LNK2001:無法解析的外部符號 「私人:靜態 類的std :: random_device隨機:: RD」 C(RD @隨機@@ 0Vrandom_device @ STD @@?A):\用戶\ Reethok \桌面\ C++ \寵物 項目\蛇\蛇\ main.obj蛇錯誤2錯誤LNK2001:無法解析 外部符號 「私人:靜態類 的std :: mersenne_twister_engine 隨機::根」 (創@隨機@@ 0V? $ mersenne_twister_engine @ $ 0CA @ $ 0CHA @ $ 0BIN @ $ 0BP @ $ 0JJAILANP @ $ 0L @ $ 0PPPPPPPP @ $ 06 $ 0JNCMFGIA @ $ 0P @ $ 0OPMGAAAA @ $ 0BC @ $ 0GMAHIJGF @@ std @@ A)C:\用戶\ Reethok \ Desktop \ C++ \ Pet Projects \ Snake \ Snake \ main.obj Snake錯誤3錯誤LNK1120:2 無法解析的外部C:\ Users \ Reethok \ Desktop \ C++ \寵物 項目\蛇\調試\ Snake.exe 1蛇
提前感謝!