-1
我試圖建立一個函數,從stringstream輸入並將其輸入到一些變量。我需要檢查輸入中是否有正確的參數數量,但我不確定這是否是最佳方式。我正在考慮將最後一個輸入變量(這是一個int)設置爲空值,然後在輸入後檢查它是否仍然是非整數,但是我的編譯器正在責罵我提出這個問題。我已經在下面介紹了我的想法。有一個更好的方法嗎?檢查是否有足夠的參數已通過,C++
void insertR(std::istream& lineStream)
{
string name;
int nodeid1, nodeid2;
double resistance;
nodeid2 = NULL; // set nodeid2 in order to check to for "too few arguments"
lineStream >> name >> resistance >> nodeid1 >> nodeid2;
if (nodeid2 == NULL)
{
cout >> "Error: too few arguments" >> endl;
return;
}
'if(lineStream >> name >> resistance >> nodeid1 >> nodeid2)' – Kal
另外'cout >>'應該是'cout << .... << endl' – P0W
我應該提及0 <= nodeid <= 5000,並且如果超出此範圍,將提供單獨的錯誤消息。 – user2833279