调用重载的构造函数时不会调用默认的构造函数

原创、转载请注明出处

#pragma once
#ifndef LEI_H
#define LEI_H

class lei
{
public:
    lei()
    {
        cout << "hi" << endl;
    }
    lei(int x)
    {
        cout << x << endl;
    }
};
#endif // !LEI_H

默认构造函数:

#include"stdafx.h"
#include<iostream>
using std::cout;
using std::endl;
#include"lei.h"

int main()
{
    lei A;
    getchar();
    return 0;
}

结果:

调用重载的构造函数:

#include"stdafx.h"
#include<iostream>
using std::cout;
using std::endl;
#include"lei.h"

int main()
{
    lei A(2);
    getchar();
    return 0;
}

结果:

没有输出hi。说明不调用构造函数时才会自动调用默认构造函数。

 

posted @ 2017-10-09 11:34  哲贤  阅读(675)  评论(0编辑  收藏  举报