这两个分别是什么意思哇,cpp是什么,刚学c语言还搞不太明白
前者是源代码,后者是编译后的可执行文件。
前者用dev c++打开,编辑
后者在命令行里执行
【相关推荐】
(Cpp新增功能)
什么叫 函数重载?
同一作用域内的,函数名字相同,但是参数列表不同的 函数,互为重载函数
(特别注意:返回值,不作为函数重载的条件!)
参数列表不同又分为 :
参数类型不同
参数个数不同
什么叫同一作用域?
#include <iostream>
using namespace std;
void fun(int a)
{
cout << '1:' << a <<endl;
}
void fun(int a , int b)
{
cout << '2:' << a <<' '<<b<<endl;
}
void fun(char c)
{
cout << '3:' <<c <<endl;
}
上面三个函数的名字都一样,这在C中是绝对不允许的,但是Cpp中引入了 函数重载的概念,就允许存在了。
重载函数的 调用:
sys会根据传入的实参 ,来进行自动匹配调用哪一个函数。比如:
int main()
{
fun(2);
fun('a');
fun(5,6);
return 0;
}
📒!函数重载Tips:
float 类型的参数,传参的时候,小数后面必须加一个小f,不然默认是double类型的;
什么叫同一个作用域?
就是有共同的作用域的意思;
函数作用域:指该函数往下的所有代码;
返回值不作为函数重载的条件的意思是:
如果两个函数的返回值不同,但是名字和参数列表都相同的话,是不能构成 函数重载的,也就是说,会报错(重定义了)
默认参数和重载结合使用,可能会让调用不明确
6.3防止头文件重复包含
预处理:
宏
包含头文件
防止头文件重复包含
防止头文件重复包含:
在C语言中为了防止头文件重复包含,我们用了这个结构:
#ifndef AAA
#define AAA
//在这里写头文件的代码
void fun()
#endif
Cpp里面,我们这样:
#pragma once
//once的意思是 以下所有的代码仅编译一次
void fun()
区别?
:
前者都通用,后者取决于编译器,有的编译器不支持这个预处理