我一直在試圖理解默認構造函數,我想我得到它,如果它是類中唯一的構造函數。但是如果我在類中定義了多個構造函數呢?我想要做的是創建一個類「向量」,它將存儲二維向量。我需要一個構造函數來將座標設置爲主函數中給出的值。我還需要一個默認的構造函數,調用時,將座標設置爲0。我似乎無法弄清楚如何使雙方工作,在相同的代碼默認構造函數與正常構造函數的類C++
#include <iostream>
#include <string>
#include <cmath>
#include <vector>
#include <algorithm>
using namespace std;
class Vector {
double x_coord, y_coord;
public:
Vector(double x_coord=0, double y_coord=0); //default contructor???
Vector (double x, double y) //normal constructor
{
set_values (x,y);
}
void set_values(double new_x, double new_y) //function to set values for the vectors
{
x_coord=new_x;
y_coord=new_y;
}
double get_x()
{
return x_coord;
}
double get_y()
{
return y_coord;
}
};
要麼有一個構造函數'Vector(double x_coord = 0,double y_coord = 0);'它既可以作爲默認構造函數使用,因爲它可以不帶參數調用,也可以作爲雙參數構造函數使用;或者兩個構造函數,一個不帶參數,如'Vector()',另一個帶兩個'Vector(double x,double y)'。擁有一個總是帶有兩個參數的構造函數,以及可選地使用相同參數的構造函數是沒有意義的。 –