构造和析构的基础知识-创新互联
前言
创新互联建站是一家集网站建设,彭山企业网站建设,彭山品牌网站建设,网站定制,彭山网站建设报价,网络营销,网络优化,彭山网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。创建一个对象时,常常需要做某些初始化的工作,例如对数据成员赋值,注意,类的数据成员是不能在声明类时初始化的
为了解决这个问题,C++编译器提供了 构造函数 来处理对象的初始化。构造函数是一种特殊的成员函数,与其他成员函数不同,不需要用户来调用它,而是在建立对象时自动执行。
2、构造函数的分类(三个)
(1)无参构造函数
Test() { ; }
(2)带参数构造函数
Test(int a,int b) { ; }
(3)赋值构造函数
Test(const Test &obj) { ; }
构造函数的调用
#includeusing namespace std; class Test { public: Test() //无参构造函数 { m_a = 0; m_b = 0; cout << "无参构造函数" << endl; } Test(int a) //一个参数的有参构造函数 { m_a = a; m_b = b; } Test(int a,int b) //有参构造函数 //调用有参构造函数有三种方法 { m_a = a; m_b = b; cout << "有参构造函数" << endl; } Test(const Test& obj) //赋值构造函数(copy构造函数) { cout << "我也是构造函数" << endl; } public: void print() { cout << "普通成员函数" << endl; } protected: private: int m_a; int m_b; } void main() { Test t1; //无参构造函数的调用 (对象后什么都不写) //有参函数的第一种调用方法 括号法 Test t1(1,2); //调用两个参数的构造函数 t1.ptint(); //有参函数的第二种调用方法 =号法 (=操作不再是C语言中的功能。C++对= 进行了功能性增强) Test t2 = (3,4); //调用一个参数的构造函数 因为()号里是逗号表达式,结果为 4;即最后一个数 t2.print(); Test t3 = 4; t2.print(); //跟 Test t2 = (3,4) 效果是一样的 //有参函数的第三种调用方法 手动的调用构造函数 Test t4 = Test(1,2); //调用了有两个参数的构造函数 //直接调用构造函数,会产生匿名对象(涉及到匿名对象的去和留) cout << "hello" << endl; }
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网站名称:构造和析构的基础知识-创新互联
文章源于:http://ybzwz.com/article/dcgpde.html