デフォルトパラメータを使用したコンストラクション関数
1154 ワード
ソース:
1.コンストラクション関数にデフォルトのパラメータがあると、コンストラクション関数に等しい個数よりも小さい実パラメータの個数が自由になります.
2.デフォルト値を指定する場所は、コンストラクション関数を宣言するときです.
3.Volume(int l=10,int w=10,int h=10);この文は、Volume(int=10、int=10、int=10)は省略できると言っても、省略しないほうがいいと思います.はっきり書いてソースコード自体がはっきりしているからです.
4.パラメータのコンストラクション関数を使用せずに、1つのクラスに1つしかありません.
5.1つのクラスでデフォルトのパラメータがすべて定義されたコンストラクション関数を定義した後、コンストラクション関数を再ロードすることはできません.すなわち,このクラスの構造関数は1つしかない.これは実は比較的に理解しやすくて、仮定して1つのすべてデフォルトのパラメータの構造関数の関数を定義して、また1つのリロードの構造関数を定義して、それではシステムはその構造関数を実行しますか?
<span style="font-size:14px;">#include<iostream>
using namespace std;
class Volume
{
public:
Volume(int l=10,int w=10,int h=10);
void Volume_cout();
private:
int length;
int width;
int height;
};
Volume::Volume(int l,int w,int h)
{
length=l;
width=w;
height=h;
}
void Volume::Volume_cout()
{
int result;
result=length*width*height;
cout<<result<<endl;
}
int main()
{
Volume p1;
p1.Volume_cout();
Volume p2(20);
p2.Volume_cout();
Volume p3(20,30);
p3.Volume_cout();
Volume p4(20,30,40);
p4.Volume_cout();
return 0;
}</span>
注意:1.コンストラクション関数にデフォルトのパラメータがあると、コンストラクション関数に等しい個数よりも小さい実パラメータの個数が自由になります.
2.デフォルト値を指定する場所は、コンストラクション関数を宣言するときです.
3.Volume(int l=10,int w=10,int h=10);この文は、Volume(int=10、int=10、int=10)は省略できると言っても、省略しないほうがいいと思います.はっきり書いてソースコード自体がはっきりしているからです.
4.パラメータのコンストラクション関数を使用せずに、1つのクラスに1つしかありません.
5.1つのクラスでデフォルトのパラメータがすべて定義されたコンストラクション関数を定義した後、コンストラクション関数を再ロードすることはできません.すなわち,このクラスの構造関数は1つしかない.これは実は比較的に理解しやすくて、仮定して1つのすべてデフォルトのパラメータの構造関数の関数を定義して、また1つのリロードの構造関数を定義して、それではシステムはその構造関数を実行しますか?