大久保です。


Reply to "[mfc 51209] winsock2.h をインクルードすると limits が使えなくなる"
(Message-Id: <20050831024447.3A89.KOBA_ML@yahoo.co.jp>
at Wed, 31 Aug 2005 02:45:07 +0900, 小林 wrote)
> このコードをコンパイルすると以下のようなエラーが出ます。
> main.cpp(6): error C2059: 構文エラー : '::'
> main.cpp(6): error C2589: '(' : スコープ解決演算子 (::) の右側にあるトークンは使えません。
> main.cpp(6): warning C4003: マクロ 'max' に指定された実引数の数が少なすぎます。
> winsock2.hのインクルードを外すとエラーは出なくなるのですが、
> 原因はなんでしょうか。また、回避方法はありますか?

Platform SDKでminやmaxといったマクロが定義されているためです。
#define NOMINMAXをwinsock2.hやwindows.hをインクルードするより前に書いて
やれば,抑制できると思います。


では。


-- 
大久保 雄介(Okubo Yusuke)
mailto:y...@n01.itscom.net , mailto:y...@js5.so-net.ne.jp