1.輸入&輸出
說明:
- 使用cout標準輸出(控制臺)和cin標準輸入(鍵盤)時,必須包含< iostream >頭檔案以及std標準命名空間,
注意:早期標準庫將所有功能在全域域中實作,宣告在.h后綴的頭檔案中,使用時只需包含對應頭檔案即可,后來將其實作在std命名空間下,為了和C頭檔案區分,也為了正確使用命名空間,規定C++頭檔案不帶.h;舊編譯器(vc 6.0)中還支持<iostream.h>格式,后續編譯器已不支持,因此推薦使用+std的方式, - 使用C++輸入輸出更方便,不需增加資料格式控制,比如:整形%d,字符%c
void test()
{
/*printf("%d\n", 98);
printf("%c\n", 98);*/
int a = 10;
/*scanf("%d", &a);
scanf("%d", a);*/
//c++頭檔案定義的所有成員都屬于std命名空間
//cin:支持連續的輸入,輸入順序:從左到右
int b, c, d, e, f;
cin >> a>>b>>c>>d;
//cout:支持連續輸出,輸出順序: 從頭向右
cout << a<<" "<< "adef"<< b<<"\n";
cout << endl; //endl :換行
}
2.預設引數
大家知道什么是備胎嗎?

C++中函式的引數也可以配備胎,
預設引數概念:
預設引數是宣告或定義函式時為函式的引數指定一個默認值,在呼叫該函式時,如果沒有指定實參則采用該默認值,否則使用指定的實參,
分類:
1.全預設:所有引數都有默認值
2.半預設:部分引數設定默認值
注意:
- 半預設引數必須從右往左依次來給出,不能間隔著給
- 預設引數不能在函式宣告和定義中同時出現
- 預設值必須是常量或者全域變數
- C語言不支持(編譯器不支持)
void fun2(int a)
{
cout << a << endl;
}
//定義函式時,給引數一個默認值
//全預設:所有引數都有默認值
void fun3(int a = 10)
{
cout << a << endl;
}
//全預設
void fun4(int a = 1, int b = 2, int c = 3, int d = 4, int e = 5)
{
cout << a << " " << b << " " << c << " " << d << " " << e << endl;
}
//半預設:部分引數設定默認值
//設定默認值必須從右往左一次連續賦值,中間不能有間隔
void fun5(int a, int b = 1, int c = 2)
{
cout << a << " " << b << " " << c << endl;
}
//錯誤:
//int fun6(int a = 1, int b, int c = 2)
//{}
//int fun7(int a, int b = 1, int c, int d = 2)
//{}
//函式宣告
//宣告和定義必須為一個值
void fun6(int a = 10);
//函式定義
void fun6(int a)
{
cout << a << endl;
}


3.函式多載
自然語言中,一個詞可以有多重含義,人們可以通過背景關系來判斷該詞真實的含義,即該詞被多載了,
比如:以前有一個笑話,國有兩個體育專案大家根本不用看,也不用擔心,一個是乒乓球,一個是男足,前者是“誰也贏不了!”,后者是“誰也贏不了!”
概念:
函式多載:是函式的一種特殊情況,C++允許在同一作用域中宣告幾個功能類似的同名函式,這些同名函式的形參串列(引數個數 或 型別 或 順序)必須不同,常用來處理實作功能類似資料型別不同的問題,
//函式宣告
//宣告和定義必須為一個值
void fun6(int a = 10);
//函式定義
void fun6(int a)
{
cout << a << endl;
}
//C語言:同一個作用域下,函式名不能相同
//c++:可以
//函式多載:
// 函式名相同,引數相同
// 引數相同:引數個數、順序、型別
char add(char a, char b)
{
return a + b;
}
int add(char a, int b)
{
return a + b;
}
void fun7(int a, char b)
{
cout << b << a << endl;
}
//引數順序不同
void fun7(char b, char a)
{
cout << b << a << endl;
}
//引數個數不同
void fun7(char b, char a,char c)
{
cout << b << a << c << endl;
}
測驗模塊:
void test()
{
int a = 1;
char b = 'a';
fun7(a, b);
fun7(b, a);
fun7(b, a, b);
}
int main()
{
test();
system("pause");
return 0;
}



轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/261077.html
標籤:其他
上一篇:實作進度條自增長及漸變樣式
