国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

函數(shù)指針和回調(diào)函數(shù) 以及指針函數(shù)

這篇具有很好參考價(jià)值的文章主要介紹了函數(shù)指針和回調(diào)函數(shù) 以及指針函數(shù)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

函數(shù)指針(Function Pointer):

  • 定義: 函數(shù)指針是指向函數(shù)的指針,它存儲(chǔ)了函數(shù)的地址。函數(shù)的二制制代碼存放在內(nèi)存四區(qū)中的代碼段,函數(shù)的地址它在內(nèi)存中的開始地址。如果把函數(shù)的地址作為參數(shù),就可以在函數(shù)中靈活的調(diào)用其它函數(shù)。
  • 用途: 函數(shù)指針可以用來在運(yùn)行時(shí)動(dòng)態(tài)選擇調(diào)用哪個(gè)函數(shù),或者將函數(shù)作為參數(shù)傳遞給其他函數(shù)。

使用函數(shù)指針的三個(gè)步驟:

????????a)聲明函數(shù)指針;

????????b)讓函數(shù)指針指向函數(shù)的地址;

????????C)通過函數(shù)指針調(diào)用函數(shù)。

?

// 聲明一個(gè)函數(shù)指針
int (*add)(int, int);

// 將函數(shù)地址賦給函數(shù)指針
add = ∑

// 使用函數(shù)指針調(diào)用函數(shù)
int result = add(3, 4);

????????回調(diào)函數(shù)是一種在編程中常見的概念,它是指一個(gè)函數(shù)作為參數(shù)傳遞給另一個(gè)函數(shù),并在特定事件發(fā)生時(shí)被調(diào)用。

void show(void (*pf)()){
    pf();
}

void zs(){

cout << "我是大爸爸"<<endl;
}

void ls(){

cout << "我是小爸爸"<<endl;
}

int main(){
show(zs);
show(ls);
}

傳參方式1:

void show(void (*pf)(int)){
    int c =0;
    pf(c);
}

void zs(int a){

cout << "我是大爸爸"<<endl;
}

void ls(int b){

cout << "我是小爸爸"<<endl;
}

int main(){
show(zs);
show(ls);
}

傳參方式1:

void show(void (*pf)(int),int c){
    
    pf(c);
}

void zs(int a){

cout << "我是大爸爸"<<endl;
}

void ls(int b){

cout << "我是小爸爸"<<endl;
}

int main(){
int c=0;
show(zs,c);
show(ls,c);
}

指針函數(shù)

????????指針函數(shù)是指返回類型為指針的函數(shù)。它與一般的函數(shù)不同,因?yàn)樗姆祷刂凳且粋€(gè)指針,而不是基本數(shù)據(jù)類型或結(jié)構(gòu)體。

指針函數(shù)的使用場(chǎng)景可能包括:

  1. 動(dòng)態(tài)內(nèi)存分配: 返回指向動(dòng)態(tài)分配內(nèi)存的指針,允許在堆上分配內(nèi)存。

  2. 返回?cái)?shù)組或字符串: 返回指向數(shù)組或字符串的指針,這在處理字符串或數(shù)組時(shí)很有用。

  3. 函數(shù)指針返回類型: 在某些情況下,函數(shù)指針也可以被認(rèn)為是一種指針函數(shù)。函數(shù)指針指向函數(shù)而不是數(shù)據(jù),但它們的返回類型是指針。文章來源地址http://www.zghlxwxcb.cn/news/detail-810047.html

#include <iostream>

// 定義一個(gè)指針函數(shù),返回整數(shù)指針
int* createInteger() {
    int* ptr = new int; // 在堆上分配內(nèi)存
    *ptr = 42;          // 設(shè)置指針指向的值
    return ptr;         // 返回指針
}

int main() {
    // 調(diào)用指針函數(shù),得到一個(gè)整數(shù)指針
    int* result = createInteger();

    // 使用指針指向的值
    std::cout << "Value created by pointer function: " << *result << std::endl;

    // 記得釋放在堆上分配的內(nèi)存
    delete result;

    return 0;
}

到了這里,關(guān)于函數(shù)指針和回調(diào)函數(shù) 以及指針函數(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包