c++0xをやりたいのでMinGW上にgcc4.4をインストール。それに伴いインクルードパスを変更。色々適当に試してうまくいったのがこれ。なぜかMinGW\lib\gcc\mingw32\4.4.0\includeとかが出来上がる。lib配下になぜヘッダ・ソースが???。まぁ意味的にはライブラリか。確かに。
g++のオプションに "-std=gnu++0x" を追加。"-std=c++0x"だとなぜかコンパイル出来なかった。
eclipse側はauto型の宣言に対応出来ず、Syntax error がでるが、コンパイルは出来る。
#include <iostream> #include <string> using namespace std; int main(){ string s("abcdefgh"); auto s_sub = s.substr(4,2); auto s_length = s.length(); cout<<s_sub<<endl; cout<<s_length<<endl; return 0; }
ctrl+B, F11でgdbが起動。auto変数2つがちゃんとstringとunsigned intになっているのが確認出来た。感動。