- 締切済み
多次元動的配列使いたいんだけどboostっていいの?
多次元動的配列を使用したいのですがC++標準にはないんですhね・・・。 それで調べてみたのですがboostのmulti_arrayで実現出来るぽいことがわかりました。 そこでいくつか質問があります。、 (1)BCCを使用してるのですが、boostとの相性(あるのか知らないけど)とかっていいのでしょうか? (2)boostよりいいのってあるのでしょうか?(あれば教えてください。) (3)有料でしょうか? (4)使いやすいでしょうか? 以上、よろしくお願いします。
- みんなの回答 (7)
- 専門家の回答
みんなの回答
- sakusaker7
- ベストアンサー率62% (800/1280)
VC++に変えましたということなので余計な情報っちゃ余計な情報ですが 今日(昨日?)リリースされたBoost最新版(1.35.0)のリリース情報だと The following compilers are officially supported in this release: * HP aCC version 61400 on HP-UX. * Darwin GCC 4.01. * GNU GCC up to version 4.2.1, on Linux and Solaris. * Intel C++ 9.1 on Linux. * Intel C++ 10.1 on Windows. * Microsoft Visual C++ 7.1 and 8 on Windows (Visual Sudio .NET 2003 and 2005). In addition the following compilers should be well supported, but weren't part of out release criteria for 1.35: * IBM Visual Age 9.0 on AIX. * Intel C++ 10 and later on Linux. * GNU GCC 4.3 and later on Linux and Solaris. * Microsoft Visual C++ 9 (Visual Studio .NET 2008). ということだそうです。
- sakusaker7
- ベストアンサー率62% (800/1280)
ありがとうございます >#3、#5 プロジェクトのトップページにあるサポートコンパイラのところに 挙げられているのに問題ありなんですか。 6.xってバージョン番号にもなってないあたりがそもそもあれなんですかねえ。 すでに探しているかもしれませんが、ドキュメントの日本語訳は本家のバージョンアップに追いついてないみたいですね。 SourceForge.JP: Project Info - Boostドキュメント日本語化プロジェクト http://sourceforge.jp/projects/boostjp/ 書籍は多分これだけ Boost C++Librariesプログラミング 第2版: 稲葉 一浩: 本 http://www.amazon.co.jp/dp/4798017043/
- jacta
- ベストアンサー率26% (845/3158)
#3です。 > >5.5.1はもちろん、Turbo C++ Explorerでもmulti_arrayは使えなかったと思います > とする根拠は何でしょうか? >#3 http://engineering.meta-comm.com/boost-regression/1_34_1/user/multi_array_release.html を見る限り、borland- 5.8.2ではmulti_arrayはunusableになっています。 Boostの古いバージョンなら使えたかもしれませんが、全部は調べていません。
お礼
とりあえずですが、 VC++ 9.0のインストールと、boostの追加完了しました。 それでboostのページにあるmulti_arrayのソースを試して動くのを確認しました。 後は、使い方を調べるだけです。 ありでした。
- sakusaker7
- ベストアンサー率62% (800/1280)
Borland/CodeGearの製品はDelphi含めて見切りをつけてしまって BDS2006からあとは全然知らないのですけど、 #2にあるように、Boostのページにサポートしているコンパイラとして BCC++5.8.2というのがあって、これはBDS2006のもののようです。 でTurbo ExplorerのコンパイラはBDS2006のものと同じだと思うんですが >5.5.1はもちろん、Turbo C++ Explorerでもmulti_arrayは使えなかったと思います とする根拠は何でしょうか? >#3 わたしも使えるかどうかははっきりとは知らないので経験談なりあればお聞かせねがいたく。
- jacta
- ベストアンサー率26% (845/3158)
> (1)BCCを使用してるのですが、boostとの相性(あるのか知らないけど)とかっていいのでしょうか? 5.5.1はもちろん、Turbo C++ Explorerでもmulti_arrayは使えなかったと思います。multi_arrayを使いたいのであれば、Visual C++かMinGWにするほうがよいと思います。 > (2)boostよりいいのってあるのでしょうか?(あれば教えてください。) ちょっと分かりません。 > (3)有料でしょうか? 無料です。ただし、誰もサポートしてくれませんので、すべて自分で解決する必要があります。 > (4)使いやすいでしょうか? 理解できれば使いやすいです。 C++が分かっていないとか、英語のドキュメントが読めないとか言う場合は論外です。
お礼
ありがとうございます。 一度、VCを使ってみようと思います。
- sakusaker7
- ベストアンサー率62% (800/1280)
>(1)BCCを使用してるのですが、boostとの相性(あるのか知らないけど)とかっていいのでしょうか? 無償配布している5.5ですか? それなら多分使えない機能があります。 #サポートを切るのなんので一騒動あったような Supported Compilers New in this release is improved support for the IBM XL C/C++ compiler. Boost is tested on a wide range of compilers and platforms. Since Boost libraries rely on modern C++ features not available in all compilers, not all Boost libraries will work with every compiler. The following compilers and platforms have been extensively tested with Boost, although many other compilers and platforms will work as well. For more information, see the regression test results. * Apple GCC 4.0.1 on Mac OS X. * Borland C++ 5.8.2 on Windows. Turbo Exploerer のやつなら大丈夫かも? 3) Boost C++ Libraries "Boost provides free peer-reviewed portable C++ source libraries." http://www.boost.org/ 4) 便利だけど使いやすいかどうかはちと疑問。 慣れればどうってことはないだろうけど。
お礼
回答ありがとうございます。 Borland、無償配布でVer.古かったです。 なれてたのでこればっか使ってたんですけど 本気でVCを考えて見ます。
- koko_u_
- ベストアンサー率18% (459/2509)
boost のライセンスは非常に緩いので(もちろんフリー)、使ってみて nyororo-n さんの抱える具体的な問題にそぐわない箇所を質問した方がよいでしょう。
お礼
ふむふむ、ありがとです。
補足
multi_array、実際に使ってみましたがなんかすごく使いづらいですね。 既にある程度ソースが出来てるのをそれに修正するのは予期せぬエラーがいっぱいでそうな予感・・・。 ループ処理用にint型で宣言してたのが、array_type::indexになったり(なぜにint使えないの?)、 関数の宣言を配列のint A[3][3][3]としてたのをarray_type Aとかに置き換えたり、修正箇所が多すぎて把握しきれなさそうです。