[英]no matching function for getline c++
我正在嘗試輸入一個數字,並且基於該數字,用戶將不得不輸入x次。
例如
3 //how many the user wants
192 231 2 3
22192 2 1 23
2831 3 23 1
我嘗試這樣做,但一直說getline
沒有匹配功能
int* x = NULL;
int numbers;
cin >> numbers;
x = new int[numbers]
for (int i=0;i<numbers;i++)
{
std::getline(std::cin, numbers)
x[i] = numbers
}
getline的第二個參數的類型為std::string
您絕對不希望使用std::getline
因為它看起來好像不需要數字字符串,而是數字本身。
您想要的是按數字讀取數字,因此請使用與讀取numbers
,但不要再次按numbers
讀取它。 (因為您正在循環中使用它。)
無論如何,這是您想要的近似值:
int how_many;
std::vector<int> numbers;
std::cin >> how_many;
for (int i = 0; i < how_many; i++){
int temp;
std::cin >> temp;
numbers.push_back(temp);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.