<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    歡迎使用我的 在線工具

    小D

    讀歷史、看小說(shuō)、寫程序都是我所愛(ài)。技術(shù)不好,頭腦不靈光,靠的是興趣。
    隨筆 - 35, 文章 - 25, 評(píng)論 - 13, 引用 - 0
    數(shù)據(jù)加載中……

    關(guān)于函數(shù)

    #include<iostream>
    #include "string"
    using namespace std;
    /*
    size_t count_calls()
    {
    ?static size_t ctr = 0;
    ?return ++ctr;
    }
    */
    //不可以間隔省,不可以向后省,具體自己以編譯器的角度理解
    /*
    string screenInit(string::size_type height = 24,
    ????? string::size_type width = 80,
    ????? char background = ' ')
    {
    ?return "";
    }
    */

    bool lengthCompare(const string &str1, const string &str2)//聲明一個(gè)函數(shù)
    {
    ?if(str1.length() >= str2.length())
    ??return true;
    ?else
    ??return false;
    }

    void useBigger(const string &, const string &,
    ????? bool(const string &, const string &));//將函數(shù)指針作為參數(shù)
    void useBigger(const string &, const string &,
    ????? bool (*)(const string &, const string &));//也可以這樣傳遞函數(shù)指針。

    int (*ff(int))(int *, int);//返回指向函數(shù)的指針,需要從里往外理解
    //很難理解大致為 有一個(gè)ff(int)函數(shù),他帶有(int *, int)的參數(shù),返回一個(gè)int
    //可使用typedef簡(jiǎn)化為
    typedef int (*FF)(int *, int)
    FF ff(int)
    //真雞巴復(fù)雜


    int main()
    {
    /*?
    ?typedef bool (*cmpFcn)(const string &, const string &); //只要函數(shù)類型相同皆可
    ?//所謂的函數(shù)類型,是指函數(shù)參數(shù)及其類型、個(gè)數(shù)、順序等,還有返回值
    ?cmpFcn pf1 = 0;
    ?cmpFcn pf2 = lengthCompare;
    ?pf2("111","2222");//直接引用函數(shù)名等效于在函數(shù)名上應(yīng)用取地址操作符
    ?pf1 = pf2;
    ?pf1("2222","111");//不需要使用解引用操作符*,直接通過(guò)指針調(diào)用函數(shù)。
    */?
    /*
    ?for(size_t i = 0;i != 100; ++i)
    ??cout<<count_calls()<<endl;
    ?return 0;
    */

    ?

    return 0;
    }

    ?

    最后加幾點(diǎn)注意:

    1.? 千萬(wàn)不要返回局部對(duì)象的引用,因?yàn)榫植繉?duì)象已被回收,所以引用將會(huì)變成空引用,而返回對(duì)象執(zhí)行的是值拷貝,也就是重新生成了一個(gè)對(duì)象。

    2. 如果不希望引用返回的值被修改,返回引用請(qǐng)聲明為const,同理形參也是一樣,如果不希望被修改請(qǐng)?jiān)O(shè)為const。

    3. 千萬(wàn)不要返回局部對(duì)象的引用,基本和引用相同,方法返回后局部對(duì)象被釋放,所以指針為垂懸指針。

    4. 默認(rèn)實(shí)參是通過(guò)給形參表中提供明確的初始值來(lái)指定的。在函數(shù)聲明中指定,而且在同一個(gè)文件中只能為一個(gè)函數(shù)指定一次。

    posted on 2009-11-04 19:19 vagasnail 閱讀(278) 評(píng)論(0)  編輯  收藏 所屬分類: C\C++

    主站蜘蛛池模板: 亚洲精品自产拍在线观看动漫| 一级特级aaaa毛片免费观看| 亚洲人精品午夜射精日韩| 在线视频免费观看高清| 中文字幕免费在线看| 亚洲女子高潮不断爆白浆| 久久精品国产精品亚洲毛片| 自拍偷自拍亚洲精品被多人伦好爽| 黑人粗长大战亚洲女2021国产精品成人免费视频| 国产真人无码作爱免费视频 | 国产99视频精品免费视频76| 亚洲精品第一综合99久久| 亚洲国产精品一区| 久久久久亚洲AV成人网人人软件 | 亚洲综合激情五月丁香六月| 亚洲综合无码一区二区| 亚洲精品成人网站在线观看| 亚洲av午夜精品一区二区三区| 美女黄网站人色视频免费国产| 97热久久免费频精品99| 99久久人妻精品免费一区| 国产免费爽爽视频在线观看| 国产成人高清精品免费观看| 四虎影视在线看免费观看| 在线精品自拍亚洲第一区| 亚洲经典千人经典日产| 日韩亚洲国产高清免费视频| 亚洲精品第一国产综合野| 亚洲伊人色一综合网| 亚洲国产成人无码av在线播放| 中文字幕亚洲综合久久| 久久亚洲美女精品国产精品| 亚洲激情视频在线观看| 亚洲福利在线视频| 亚洲avav天堂av在线不卡| 亚洲AV无码久久精品狠狠爱浪潮| 亚洲av无码一区二区三区网站| 亚洲va无码va在线va天堂| 亚洲AV永久青草无码精品| 亚洲A∨无码一区二区三区| 亚洲欧洲日产国产综合网|