/clrオプションでregex++を利用する場合に †マネージド/ネイティブ混合コードにて、vararg(可変引数)に起因するエラーメッセージ(C4793/W3)に対応する。 制約事項 †警告を最大のレベル4(/W4)にしてコンパイルした場合にも、C4100とC4189以外のエラーメッセージが0となること。 /* This is OK for me ******************************************//* /W3 vararg警告対応 */ #ifdef _MANAGED struct sp_any_pointer { template<class T> sp_any_pointer( T* ) {} }; inline void sp_enable_shared_from_this( shared_count const & /*pn*/, sp_any_pointer, sp_any_pointer ) { } #else // NOT managed. #ifdef sgi // Turn off: the last argument of the varargs function "sp_enable_shared_from_this" is unnamed # pragma set woff 3506 #endif inline void sp_enable_shared_from_this( shared_count const & /*pn*/, ... ) { } #ifdef sgi # pragma reset woff 3506 #endif #endif // _MANAGED //*This is OK for me ******************************************//* /W3 vararg警告対応 */ 修正履歴 †課題 †以下の概念を、管理人自身がいまいち理解してない。
参考ページ † |