来自MATLAB,我想知道是否有办法在c ++中使用函数参数,就像在MALTAB中完成一样。这是一个例子来说明我在c ++中尝试使用的内容:
draw('shape','circle','radius',5); // should draw a circle
draw('shape','square','width',3,'hight',4); // should draw a square
上面的功能是相同的,但功能争论不同。我想在c ++中使用这种语法。有没有办法做到这一点?感谢。
答案 0 :(得分:2)
你可以尝试以下方法(尽管你的主要意图并不是很清楚):
void MyDrawingFunc(const std::vector<std::string>& Arguments)
{
auto& arg = Arguments[0];
if (arg == "shape")
DoShapeStuff(Arguments); // use Arguments[1...]
else if (arg == "otherThing")
...
}