ここ数時間、JavaとC++のコードを補間するためにCNIを使いこなしてきました。CNI/C++コードでテンプレートクラスをインスタンス化する
古いチームの代わりにJavaコレクションを使用する可能性があると私はlibstd
が見つかりませんでしたが、java.util.Stack
オブジェクトを作成して操作しようとしました。
# gcc -g -I. test.cc
test.cc: In function ‘int main(int, char**)’:
test.cc:24:3: error: ‘java::util::Stack’ is not a template
Stack<Person> *stack = new Stack<Person>();
^
test.cc:24:30: error: ‘java::util::Stack’ is not a template
Stack<Person> *stack = new Stack<Person>();
(Personオブジェクトが明確に定義されているJavaクラス)
: しかし、コンパイラ(gcc
とgcj
は、そのおそらく同じに)私の無実の心時に彼の安価なトリックを果たしているようです
型引数の指定を削除したときにのみ、型引数がjava.lang.Object
に選ばれたかのように、データ構造体を使用できます。 CNI docsには何も言及されていないようです!テンプレートについての言葉は確かにありません。
誰でもCNIコンテキストでテンプレートを使用することについて知っていますか?それはサポートされていますか?私は答えのためにgoogle
とstackoverflow
を検索しましたが、ちょっとした手がかりを得ることはできませんでした。どんな助けもありがとう。また
、私は(そのgccのバージョンのGCJがあるのでしょうか?)私はGCC 2.95.2を使用しているかどうかを知りたい
私はVirtual Boxed
Ubunto 12
windows 10
を介してホストに取り組んでいます。 さらに重要なgcj
とgcc
バージョンは4.8.4
java --version
利回り1.5
とlibgcj 4.8.4
はい、あなたの説明の後には明らかです。私は自分自身でこれを考え出すべきだったと思う。ありがとう。 – Aviv