[英]Multiple inputs and outputs in C++
我有一個用 C++17 編寫的代碼,將值 x 和 y 作為輸入並給出一些值作為輸出。 我想改變它以獲取盡可能多的輸入(x 和 y 值)並給出輸出。 代碼中需要做哪些改動
代碼中發生的事情是:使用一些 x 和 y 坐標找到坐標編號。
int main(void) {
const std::vector<Tile> tiles{ Tile(0),Tile(1),Tile(2),Tile(3) };
// Test values
const double x{ 3700 }; // want to add multiple entries here
const double y{ 11261 }; // want to add multiple entries here
// Check cell number
for (const Tile& tile : tiles) {
if (const auto [isInTile, cellNumber] = tile.getCellNumber(x, y); isInTile) {
std::cout << "\nCellnumber: " << cellNumber << "\n:)\n\n\n\n\n\n";
}
}
return 0;
}
我嘗試了很多更改,但總是以一些錯誤告終,而且我是 C++ 的新手,我的主要語言是 python。
如果您想要多個輸入值,則將 x,y 放入一個向量中,就像您對瓷磚所做的那樣:
// Test values
const std::vector<std::pair<double, double>> test_values = {
{ 3700, 11261 },
{ 2500, 10000 },
{ 1000, 5000 }
};
// Check cell number
for (const Tile& tile : tiles) {
for (const auto [x,y] : test_values) {
if (const auto [isInTile, cellNumber] = tile.getCellNumber(x, y); isInTile) {
std::cout << "\nCellnumber: " << cellNumber << "\n:)\n\n\n\n\n\n";
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.