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

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

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

    歡迎使用我的 在線工具

    小D

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

    關于函數

    #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)//聲明一個函數
    {
    ?if(str1.length() >= str2.length())
    ??return true;
    ?else
    ??return false;
    }

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

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


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

    ?

    return 0;
    }

    ?

    最后加幾點注意:

    1.? 千萬不要返回局部對象的引用,因為局部對象已被回收,所以引用將會變成空引用,而返回對象執行的是值拷貝,也就是重新生成了一個對象。

    2. 如果不希望引用返回的值被修改,返回引用請聲明為const,同理形參也是一樣,如果不希望被修改請設為const。

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

    4. 默認實參是通過給形參表中提供明確的初始值來指定的。在函數聲明中指定,而且在同一個文件中只能為一個函數指定一次。

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

    主站蜘蛛池模板: 可以免费看黄视频的网站| 久艹视频在线免费观看| 国产无人区码卡二卡三卡免费| 亚洲AV日韩精品久久久久久久| 国产97视频人人做人人爱免费| 又爽又高潮的BB视频免费看| 男女超爽视频免费播放| 国产成人免费一区二区三区| 亚洲乱理伦片在线观看中字| 永久中文字幕免费视频网站| 日韩亚洲人成网站| 一本色道久久综合亚洲精品高清| 国产成人无码精品久久久免费| 亚洲综合国产精品第一页| 本免费AV无码专区一区| 亚洲国产成人久久精品影视| 久久久久久精品免费免费自慰| 亚洲免费二区三区| 国产无遮挡色视频免费视频| 日韩在线视频播放免费视频完整版| 精品国产亚洲男女在线线电影 | 免费a级毛片18以上观看精品| 美女免费视频一区二区三区| 亚洲香蕉成人AV网站在线观看| 日韩电影免费在线观看中文字幕| 亚洲精品免费在线| 国产大片91精品免费看3| 一级一看免费完整版毛片| 亚洲av无码av制服另类专区| 波多野结衣免费在线| 国产午夜亚洲精品不卡电影| 在线日韩日本国产亚洲| h在线观看视频免费网站| 亚洲精品乱码久久久久久蜜桃图片 | 国产亚洲精品va在线| 国产免费女女脚奴视频网 | 在线看片免费人成视频播| 亚洲AV色吊丝无码| 亚洲成a人片在线播放| 99在线视频免费| 四虎精品成人免费视频|