C 從入門到放棄之 C 函式

2021-10-23 13:49:55 字數 1007 閱讀 1156

內聯函式(inline)

函式是否構成過載關係與函式的返回值型別無關

通過函式指標呼叫過載關係的函式,由函式指標的型別決定匹配過載的版本

呼叫過載關係的函式時,編譯器會根據形參和實參的匹配程度,選擇最優的匹配版本,一般的匹配規則:

完全匹配》=常量轉換》公升級轉換》降級轉換》省略號轉換

在操作符過載函式(operator)中區分前後++(–),在後++(–)的操作符過載的函式引數中會有乙個啞元引數,

相容舊**,在**維護公升級以後,有的引數可能會不使用了,但是為了不改變介面函式的引數,可以和舊**可以相容,就可以使用啞元引數

#include

using

namespace std;

void

func

(int a =10,

int b =20,

int c =30)

;int main (

void

)void

func

(int a/* = 10*/

,int b/* = 20*/

,int c/* = 30*/

)

$ g++ defarg.cpp -o defarg

$ ./defarg

a=11, b=22, c=33

a=10, b=20, c=30

a=11, b=20, c=30

a=11, b=22, c=30

多次呼叫小而簡單的函式,適合做內聯優化

呼叫次數極少或大而複雜的函式不適合內聯優化

遞迴函式不適合內聯優化(編譯器無法確定替換次數)

虛函式不適合內聯優化

內聯對編譯來說只是一種建議而不是強制要求,乙個函式能否做內聯優化主要取決於編譯器,有些函式不加inline修飾,也會預設處理為內聯優化的函式,有些函式即便加了inline關鍵字也會被編譯器忽略

內聯優化會使函式的執行流程變的連貫,**的執行效率會的到提高

C 從入門到放棄之 C 繼承基本語法

class struct 類名 繼承方式 基類,繼承方式 基類,類名 void 返回值型別 函式名 形參表 常屬性 異常說明 訪問控制限定符 資料型別 變數名 成員變數 include using namespace std class human void eat const string foo...

C 從入門到放棄之 類和物件基本認知

struct class 類名 繼承方式 基類,建構函式 類名 void 析構函式 返回值型別 函式名 形參表 成員函式 資料型別 m 變數名 成員函式 public 公有成員 在任何位置都可以訪問,類的內部和外部都可以訪問 private 私有成員 只有類的內部成員才可以訪問,不可以通過類的物件直...

Web安全從入門到「放棄」之pikachu環境部署

1.首先進行本地伺服器的搭建 先到官方 安裝xampp 安裝完後的軟體介面 如果開啟apache和mysql顯示錯誤的話,可以開啟日誌檢視錯誤資訊,點選logs開啟error.log日誌檢視。很大情況是埠錯誤,這時候可以修改埠,關於這個問題,網上有很多教程,這裡就不講解了 解壓pikachu.zip...