C++ 快速導覽 - 同義字 typedef

關鍵字 (keyword) typedef 用來定義型態 (type) 的同義字,例如

#include <iostream>
 
int main(void)
{
    typedef int INTEGER;
    INTEGER a = 22;
    std::cout << "a: " << a << std::endl;

    return 0;
}

/* 《程式語言教學誌》的範例程式
    http://pydoing.blogspot.com/
    檔名:typedefdemo.cpp
    功能:示範 C++ 程式
    作者:張凱慶
    時間:西元 2013 年 1 月 */


第 5 行定義 INTEGER 為 int 的同義字
typedef int INTEGER;


因此可以用 INTEGER 來宣告變數 (variable)
INTEGER a = 22;


編譯執行結果如下



typedef 通常用在自行定義的型態名稱,除了可以隱藏實作細節,當自行定義的名稱又長又瑣碎的時候,就可以簡化整個名稱,例如
#include <iostream>

struct SomethingWillHappened {
    int a;
};
 
typedef SomethingWillHappened SHDemo;
 
int main(void)
{
    SHDemo d;
    d.a = 22;
    
    std::cout << "d.a: " << d.a << std::endl;

    return 0;
}

/* 《程式語言教學誌》的範例程式
    http://pydoing.blogspot.com/
    檔名:typedefdemo2.cpp
    功能:示範 C++ 程式
    作者:張凱慶
    時間:西元 2013 年 1 月 */


這裡將 SomethingWillHappened 簡化為 SHDemo
typedef SomethingWillHappened SHDemo;


編譯執行結果如下



中英文術語對照
關鍵字keyword
型態type
變數variable


您可以繼續參考
常數 const
同義字 typedef


相關目錄
回 C++ 快速導覽
回 C++ 教材
回首頁


參考資料
C++ reference
cplusplus.com
Cprogramming.com C++ Tutorial

C++ Primer, Fourth Edition, Stanley B. Lippman...

沒有留言: