关于引用参数设置默认值的问题


最近遇到一个问题,就是要对一个vector的变量设置空的参数默认值,刚开始写NULL,发现不行,后来再网上查了一下,可以通过在外部设置一个变量,来为它赋值为空

#include <iostream>
#include <vector>
using namespace std;
vector<int> vc;
class A{
    public:
        A(vector<int> & vv=vc){
            v=vv;
            s="have value";
        }
        void show(){
            cout<<s<<endl;
            cout<<"v.size(): "<<v.size()<<endl;
        }
    private:
        vector<int> v;
        string s;
};
int main(){
    vector<int> s={1,2,3,4};
    A a(s);
    A b;
    a.show();
    b.show();
    return 0;
}

运行结果:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM