Angular, Blockchain, Science とか

Angular, Blockchain, Science全般 の情報を主に書いていきます。

C++ コンストラクタのオーバーロード

C++でのコンストラクタのオーバーロードに基本について簡単に書きます。C++もこの辺は簡単ですね。

コンストラクタはクラス名を関数名として使いますのでそこだけ気を付ければOK

#include <iostream>
using namespace std;

class Car{
    private:
        int num;
        int weight;
    public:
        Car();
        Car(int n, double w);
        void show();
};

Car::Car()
{
    num = 0;
    weight = 0.0;
    std::cout << "car " << "\n";
}
Car::Car(int n, double w)
{
    num = n;
    weight = w;
    std::cout << "number is " << num << " weight is " << w << "\n";
}
void Car::show()
{
    std::cout << "the number " << num << "\n";
    std::cout << "gas amount " << weight << "\n";
}
int main()
{
    Car car1;
    Car car2(1, 450.5);
    car1.show();
    car2.show();
    return 0;
}

まあ別に難しい要素はありませんね。



Effective Modern C++ ―C++11/14プログラムを進化させる42項目

Effective Modern C++ ―C++11/14プログラムを進化させる42項目