1

ndkr7cを使用してAndroid4.0.3で使用するためにいくつかのWindowsC++をANSIに移植しています。

元のコードは、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

以前にコーディングしたときにunqualified-idメッセージを見たことがありますが、その原因について明確な答えは見つかりませんでした。Tcan.hのさまざまな場所でインクルードを再配置してみましたが、役に立ちませんでした。Tcan.h:5は私が持っているところです#include <queue>。キューを台無しにするバグやndkで見逃したものはありますか?または、dequeでこのエラーの考えられる原因を知っている人はいますか?

ありがとう

編集: ndk-r7bを使用しても違いはありません。そうなるとは思いませんでしたが、とにかくチェックしたいと思いました。

4

1 に答える 1

1

max宣言されていないマクロであることに問題がある可能性があります:ここで最初の投稿を確認してください(3 引数の最大値についてですが、問題は同じようです)。修正として、ここの最初の投稿のように、std::からプレフィックスを削除することもできます。max

于 2012-05-01T21:55:36.613 に答える