C++快速入门之输入输出,函数的重载,函数的默认参数
IDE vs studio 2019community
1.来段hello压压惊
#include <iostream>
using namespace std;
int main() {
cout << "hello" << endl;
return 0;
}
2.输入输出
int main() {
int age;
cin >> age;// cin接收输入
cout << "age is" << age << endl; //count 输出 endl是换行
return 0;
}
3.函数的重载
函数名相同,参数个数不同、参数类型不同、参数顺序不同,这种函数就叫函数的重载
int sum(int a, int b) {
return a + b;
}
int sum(int a, double b) {
return a + b;
}
int sum(double b, int a) {
return a + b;
}
int sum(int a, int b, int c) {
return a + b + c;
}
int main() {
cout << sum(10, 20) << endl;
cout << sum(10, 10.5) << endl;
cout << sum(10.5, 10) << endl;
cout << sum(1, 2, 3) << endl;
return 0;
}
函数重载的本质是采用了name mangling或者叫name decoration技术
C++编译器默认会对符号名(比如函数名)进行改编、修饰,有些地方翻译为“命名倾轧”
重载时会生成多个不同的函数名,不同编译器(MSVC、g++)有不同的生成规则
通过IDA打开【VS_Release_禁止优化】可以看到
4.函数的默认值
void display(int count, string str = "asdsadasd") {
cout << count << str << endl;
}
int main() {
display(123);
return 0;
}
默认参数只能按照右到左的顺序
4.1.如果函数同时有声明、实现,默认参数只能放在函数声明中
4.2默认参数的值可以是常量、全局符号(全局变量、函数名)

浙公网安备 33010602011771号