めっちゃお久しぶりです。
長らくサボってました。今度からもう少しかんがります・・・はい・・・
今回はビルド時の警告を消していく時に便利な話です。
C++で関数に渡した引数を使用しないと警告がでます。
変数を使用しない状況はオーバーライドしたい時等、色々とありますが、警告が出ると本当に必要な情報が埋もれる時があるので、出来る限り警告は消して生きたいです。
なので、解決策としては変数をvoidにキャストする事で、実行処理としては何も行われませんが、警告は出ない様になります。
キャスト方法としては普通にキャストする時と同じになります。
( void )( &testVariable );
これを実際の関数に使用するとこんな感じになります:
void TestFunction( int testVariable ) { // voidキャスト ( void )( &testVariable ); // 別パターン //( void* )( testVariable ); }
これだけです。
ただ、これだと何をしているのかパッと見で解りにくいのと、書くのが面倒なのでマクロを書いておくと便利です。
// voidキャスト #define UNUSED_VARIABLE( x ) ( ( void )( &x ) ) void TestFunction( int testVariable ) { // voidキャスト UNUSED_VARIABLE( testVariable ); }
以上です。
今度からもう少し更新出切る用に・・・ガンバル・・・ガンバル、オレ・・・
[…] 以前紹介したC++でvoidキャストのマクロを書いて未使用の変数の警告を消す方法を紹介しましたが、Unity+C#では出来ないので何か無いかと見てみました。 […]