Presentation is loading. Please wait.

Presentation is loading. Please wait.

デフォルト引数 2019.06.13 長谷川啓.

Similar presentations


Presentation on theme: "デフォルト引数 2019.06.13 長谷川啓."— Presentation transcript:

1 デフォルト引数 長谷川啓

2 型の概念とは異なる 以下はエラー よって以下の実装は間違い typedef void FUNC(int = 1);
void (*pf)(int = 2); ISO/IEC Default arguments 参照 よって以下の実装は間違い class default_arg_type : public type { const type* m_T; var* m_default_arg; // デフォルト引数 ... };

3 実装例 struct usr : var { enum flag_t { ..., HAS_DEFAULT_ARG, ... }; flag_t m_flag; }; map<usr*, vector<var*> > default_arg_table; 函数をキーにしてデフォルト引数を保持するテーブル usr* u = ... usr::flag_t flag = u->m_flag; if (flag & usr::HAS_DEFAULT_ARG) { p = default_arg_table.find(u); vecotr<var*>& v = p->second; ... }


Download ppt "デフォルト引数 2019.06.13 長谷川啓."

Similar presentations


Ads by Google