属性 方法c语言,C语言如何实现C++中对象属性和方法
生活随笔
收集整理的這篇文章主要介紹了
属性 方法c语言,C语言如何实现C++中对象属性和方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在C++中,我們常見到用類定義一個對象,這個對象可以有他自己的屬性(數據)和方法(函數),而在C語言的正常語法中,是禁止在結構體中定義函數的。
在一個關于觸摸屏的驅動程序中發現,用C語言的也可以實現對象的方法(函數)。
首先定義一個按鍵的結構體。
1、我們先來討論第二個函數指針void(*btn_command)(); 我們用該結構體定義的對象想要使用這個函數指針實現方法的效果之前,需要對這個指針賦予一個同類型的函數指針(無形參的函數指針)。例如
在這里函數的名字,即為指向該函數的指針。在使用此方法時,只需
我們又會想到,當我們需要的方法需要調用對象自身的屬性(數據)時,我們改如何操作呢?
接下來我們看第一個函數指針。
2、void (*draw_btn)(void * btn); 他同樣定義了一個函數指針,但他的入口參數需要一個任意類型的指針,我們在使用它時,需要用強制轉換類型操作,將其轉換為我們需要的指針類型(實參的指針類型)。這個方法在使用前,同樣需要將他賦值為一個同類型函數的函數指針(此處是形參為一個任意類型的指針)。例如
在下面的函數中,先將形參轉換為我們需要的指針類型(Touch_Button *),在轉入到一個同類型的指針中,就可以用同類型的指針調取該類型的屬性了。
使用時,只需要將我們需要的對象的地址傳入即可。如下,
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的属性 方法c语言,C语言如何实现C++中对象属性和方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三点水曳电脑里怎么打(三点水曳怎么读)
- 下一篇: mvc html.antiforgery