如果我有一个函数签名,如下所示,默认值只评估一次或每次?
class X { public: f(const RWDate& d=RWDate::now()); } // when calling f() do I get the current time each time? X z; z.f(); // is the default value of d recaculated in the function call? z.f();
z.f(RWDate::now())
因此,每次调用函数并使用默认参数时,都会计算默认参数.