#include
using
namespace std;
// 函式過載
// 滿足函式過載條件
// 1、作用域必須相同
// /*class teacher
; 成員函式,不能作為過載的條件
};*/
// 2、函式名稱要相同
// 3、函式引數型別不同或者個數不同或著順序不同
voidf(
)voidf(
int a)
voidf(
double a)
/*int f(double a)
*/// 函式返回值是否能作為函式過載的條件?返回值不可以作為函式過載的條件,原因會出現二義性
// 引用的過載版本
// 對於引用而言,加const 和不加 const 也可以作為過載的條件
voidf1(
int a)
voidf1(
int&a)
// int &a = 10;
voidf1(
const
int&a)
// const int &a = 10;
// 函式過載遇到函式的預設引數
voidf3(
int a,
int b =10)
voidf3(
int a)
void
test01()
void
test02()
void
test03()
intmain()
編譯器在底層會將函式名做二次修飾方便內部訪問函式體
extern c
在c++下可以執行c語言檔案
#include
using
namespace std;
#include
"test.h"
// extern "c" void show(); // 告訴編譯器,不要用c++的方式去鏈結,要用c語言的方式鏈結
void
test01()
intmain()
test.c
#pragma once
#ifdef __cplusplus
extern
"c"#endif
// __cplusplus
test.c
#include
"test.h"
void
show()
C語言學習 五 函式
1 函式由返回值,函式名,引數,作用域 組成 2 返回值 1 無返回值時,必須用void修飾 2 有返回值時,用返回資料型別修飾,並且函式內部有return return返回引數,並結束函式 return引數可以使常量,變數,表示式 注意型別匹配 3 函式名 1 命名規則和變數相同 4 引數 1 形...
C 學習筆記二函式 函式過載
函式 都以static 開頭namespace 可變引數的函式 string country china vfunc names vfunc country sayhello tom 張大虎 狗剩 console.readkey static void vfunc params string val...
C 學習筆記(五)
今天來學習一下overload 過載 它和override 重寫是有區別的。通常,自然語言中同乙個詞可以代表多種不同的含義,具體含義要依賴上下文來確定。這就是所謂的一次多義 該詞被過載 overload 了。在c 中,還有另外乙個因素會使函式名過載 建構函式。因為建構函式的名字預先由類的名字確定,所...