首页 > 代码库 > 什么是构造函数?和函数的区别是什么??

什么是构造函数?和函数的区别是什么??

构造函数是一种特殊的成员函数,它主要用于为对象分配存储空间,对数据成员进行初始化.构造函数具有一些特殊的性质:
(1)构造函数的名字必须与类同名;
(2)构造函数没有返回类型,它可以带参数,也可以不带参数;
(3)声明类对象时,系统自动调用构造函数,构造函数不能被显式调用;
(4)构造函数可以重载,从而提供初始化类对象的不同方法;
(5)若在声明时未定义构造函数,系统会自动生成默认的构造函数,此时构造函数的函数体为空.
例:
class Csphere     //声明一个Csphere类
{
public:
       Csphere(double xoord=0.0,double yoord=0.0,
               double zoord=0.0,double radius=1.0)//构造函数
       {
         x=xoord;y=yoord;r=radius;
       }
      .....
}

 

构造函数就是函数,他们唯一的区别就是,调用方式不同,

//当作构造函数调用
    var user1 = new User(‘bclz‘, 30);  

    obj.show = function () {

        return this.name +‘ ‘+ this.age;

      };


    user1.show(); //bclz 30

 

 //当作普通函数调用
    User(‘bclz‘, 30);
    window.show(); //bclz 30;  

什么是构造函数?和函数的区别是什么??