我正在尝试构建一个函数,该函数从字符串流中获取输入并将其输入到多个变量中。我需要检查输入中的参数数量是否正确,但我不确定执行此操作的最佳方法。我正在考虑将最后一个输入变量(它是一个 int)设置为空值,然后在输入后检查它是否仍然是非整数,但是我的编译器责备我提出这个建议。我在下面列出了我的想法;有一个更好的方法吗?
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;
}