組み込みではSTLって使いものにならネ~、という場面は多いです。
私の数少ない経験から言わせていただくと、
- C++例外の使えない環境に対応してくれない
- コンテナをデバッグ不能
というような問題があると思います。
例外の件は、newで失敗くらいしかどうせ意味がないので、newこける状況=だめだめな状況なので許してもらえるのかもしれません。
デバッグ不能はSTLに限った話ではなく、C++ templateを使ったコードのデバッグは大変です。
そんな中、gdbのMLで興味深いスレッドが流れていました。
Variable objects and STL containers
vSTLコンテナをpコマンドで表示するとハナモゲラになってしまうという投稿から、gdb開発者?のウラジミールさんが、Pythonスクリプトでgdbの表示を整形するパッチを持っているという話題への流れです。
STLの実装ごとにスクリプトを切り替えなければならないようですし、リポジトリに取り込まれるのかもよく分かりませんが、期待して待ちましょう。
STL関連のマイリンク:
もう7,8年前になりますが、仕事でSTLは組み込みではやばいという報告をしたことがあるのですが、世の中全く進歩してないのでしょうか。
例外なんか関係ね~っと割り切ってSTLを使っているのも見かけたのですが、ムゥゥという感じがします。コンパイルオプションで例外をOFFって使ってる環境も多いですよね。実行環境の制限でそうしているというのですが、それって・・・(自主規制)
コメント