我正在学习C ++而我正试图找到这个bash的C ++等价物:
output=${1:-text}
基本上,如果未指定,则使用默认值。
答案 0 :(得分:3)
如果我理解正确,您是否正在谈论为变量分配默认值?这是对的吗?
如果是这种情况,您有多种选择:
demo.h
class demo
{
public:
demo();
~demo();
private:
int var;
};
demo.cpp
demo::demo() :
var(0)
{
}
以上示例是构造函数初始化列表。您可以通过执行以下操作来初始化任意数量的变量:
demo::demo():
var(0),
var2("Bob"),
var3("Demo2)
{
}
要初始化的所有变量都用逗号分隔。
但是,如果它是您要定义的函数的默认值,那么您可以执行以下操作:
class demo2
{
public:
void do_stuff(string name, int age, bool student = true);
};
默认变量后面总是有一个=,并且必须设置该值。我相信它也必须是参数列表中的最后一个参数。所以这允许你调用do_stuff只传递两个参数。
我希望这一切都有所帮助。