エントリーの編集
![loading...](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/common/loading@2x.gif)
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
宣言的マクロと手続き的マクロ――Rustのマクロ機能を使ってみる
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
![アプリのスクリーンショット](https://b.st-hatena.com/bdefb8944296a0957e54cebcfefc25c4dcff9f5f/images/v4/public/entry/app-screenshot.png)
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
宣言的マクロと手続き的マクロ――Rustのマクロ機能を使ってみる
メタプログラミングの手法に、C/C++言語で普通に使われているマクロ機能があります。最終回である今回は... メタプログラミングの手法に、C/C++言語で普通に使われているマクロ機能があります。最終回である今回は、それらより安全な実装となっているRustのマクロ機能について。 マクロとは? マクロとは、ソースコード中の特定の文字列を別の文字列に置き換える機能です。プログラムの一部から別のプログラムを生成することから、メタプログラミングの手法の一つと言われています。C/C++言語などではおなじみの機能で、定数または関数のように使えるマクロを定義するために利用できます。 C/C++言語のマクロの抱える問題 C/C++言語のマクロは、特に関数の代わりに使われるときに期待しない動作となり、しばしばバグの原因となったり、マクロの危険性の理由となったりしてきました。例えば「#define ADD2(a, b) a + b」のように定義されたマクロADD2を、「int x = ADD2(2, 3) * 4;」の