2012-04-30 20 views
1

ndk r7cを使用して、Android 4.0.3で使用するANSIにいくつかのWindows C++を移植します。"deque.h"でandroid-ndk-r7c unqualified-idエラーが発生しました

元のコードは、設定された間隔でチェックするUDPクライアントとパケットキューを設定します。これにより、メインプログラムは着信パケットをポーリングしないようにプログラムが他の場所でビジー状態になるとキューが満杯になります。コードはかなり長いので、ここではまだ投稿しません。

私はメッセージを取得しておく

In file included from C:/Android/android-ndk-r7c/sources/cxx-stl/gnu-libstdc++/include/deque:65, 
       from C:/Android/android-ndk-r7c/sources/cxx-stl/gnu-libstdc++/include/queue:61, 
       from jni/Tcan.h:5, 
       from jni/caneth_wrap.cpp:215: 
C:/Android/android-ndk-r7c/sources/cxx-stl/gnu-libstdc++/include/bits/stl_deque.h: In member function 'void std::_Deque_base<_Tp, _Alloc>::_M_initialize_map(size_t)': 
C:/Android/android-ndk-r7c/sources/cxx-stl/gnu-libstdc++/include/bits/stl_deque.h:498: error: expected unqualified-id before '(' token 
In file included from C:/Android/android-ndk-r7c/sources/cxx-stl/gnu-libstdc++/include/deque:68, 
       from C:/Android/android-ndk-r7c/sources/cxx-stl/gnu-libstdc++/include/queue:61, 
       from jni/Tcan.h:5, 
       from jni/caneth_wrap.cpp:215: 
C:/Android/android-ndk-r7c/sources/cxx-stl/gnu-libstdc++/include/bits/deque.tcc: In member function 'void std::deque<_Tp, _Alloc>::_M_reallocate_map(size_t, bool)': 
C:/Android/android-ndk-r7c/sources/cxx-stl/gnu-libstdc++/include/bits/deque.tcc:820: error: expected unqualified-id before '(' token 

私が前にコーディングするときに修飾されていない-IDのメッセージを見て、それを引き起こすもののための決定的な答えを見つけたことがありません。 Tcan.hの別の場所にあるインクルードを再配置しようとしましたが、何の助けもありませんでした。 Tcan.h:5は私が#include <queue>を持っているところです。待ち行列を混乱させるndkで逃したバグか何かがありますか?または、誰もがこのエラーの可能な原因を両端キューで知っていますか?

おかげ

EDIT:NDK-R7Bを使用には違いはありません。私はそれができないと思ったが、とにかく私がチェックすると思った。

答えて

1

maxが宣言されていないマクロに問題がある可能性があります。最初の投稿hereを確認してください(最大約3引数ですが、問題は同じようです)。また、hereのように、maxからstd::という接頭辞を削除することもできます。

+0

伝説、ありがとう、そのトリックをうまくやった。インクルードでmaxとminを定義し直して定義を削除し、std :: maxとstd :: minに変更したのを忘れてしまった。再度、感謝します。 – eskimo9

関連する問題