c++ 宏定義 define # 與 ## 的作用

前言:

在看一些源碼中 他們的宏定義 出現了 下面的 # 與 ##

在這裏插入圖片描述

我看不懂 就瞭解了一下 宏定義 中 # 與 ## 的作用

在這裏插入圖片描述

我定義了一個 宏

調用 qdebug 輸出一下 這個變量的值

**加粗樣式**
我相信這個大家都能看懂 我稍微改一下

‘#’

在這裏插入圖片描述

在 前面加個 # 咱們來輸出一下

在這裏插入圖片描述

區別出來了 #param

加上 # 其實就相當於

在這裏插入圖片描述

把 參數的名字 寫進去 變成字符串

這個可以看懂吧 在看下加兩個 ##

‘##’

在這裏插入圖片描述
報錯了 在這裏插入圖片描述

看來語法不對 我在試一試 下面這個
在這裏插入圖片描述

在後面 寫了一個 TT
在這裏插入圖片描述

看 他說 沒有找到 TTx 的定義

說明 他把 TT##x 拼接成一個了

我們嘗試行 定義個 TTx 變量 試一試

在這裏插入圖片描述
在這裏插入圖片描述

運行 成功了 原來## 就是起一個連接作用。。。。

在這裏插入圖片描述

比如 我們 傳入 TEST2(A,B) 那麼就是qDebug()<<AB;
在這裏插入圖片描述

ok 了 到此結束 大家都看懂了吧

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章