草庐IT

c++ - 使用类属性值作为方法默认参数的替代方法?

我想实现这样的目标:classC{intm_nVal;public:C(intnVal):m_nVal(nVal){}voidfoo(intnVal=m_nVal){//usenVal,ifprovided;otherwiseusem_nVal}};Cc(1);c.foo();//use1c.foo(2);//use2这是不可能的,因为C++标准说:anon-staticmembershallnotbeusedinadefaultargument我的选择是:(1)重载foo():classC{intm_nVal;public:C(intnVal):m_nVal(nVal){}voidf