visual studioでは通るがAOJでは通らないコード(C++)
Posted: 2015年4月12日(日) 02:42
visual stdio 2013 expressでは動くものの、Aizu Online Judgeではコンパイルエラーとなるプログラムについてお聞きしたいです。
以下がそのコードです。(AOJでのユーザー名バレを避けるため関係あると思われる部分のみ抜粋しております。)
AOJでのエラーコードは、
code.cpp: In function ‘int main()’:
code.cpp:24:5: error: ‘reverse’ is not a member of ‘std’
です。
なお、以下のようにしたらAOJでも通りました。
お聞きしたいのは、
1、なぜvisual studio では通って AOJでは通らなかったのか?
2、ほかにもvisual studioのコンパイル とオンラインジャッジのそれで違う結果が帰ることはあるのか?
の2点です。
よろしくお願いします。
以下がそのコードです。(AOJでのユーザー名バレを避けるため関係あると思われる部分のみ抜粋しております。)
#include <iostream>
#include<vector>
#include<string>
using namespace std;
int main(){
//
//
reverse(hairetuA.begin() + hairetuB.back(), hairetuA.end());
//
//
}
code.cpp: In function ‘int main()’:
code.cpp:24:5: error: ‘reverse’ is not a member of ‘std’
です。
なお、以下のようにしたらAOJでも通りました。
#include <iostream>
#include<vector>
#include<algorithm>/////////////////////////////////ここ追加
#include<string>
using namespace std;
int main(){
//
//
reverse(hairetuA.begin() + hairetuB.back(), hairetuA.end());
//
//
}
1、なぜvisual studio では通って AOJでは通らなかったのか?
2、ほかにもvisual studioのコンパイル とオンラインジャッジのそれで違う結果が帰ることはあるのか?
の2点です。
よろしくお願いします。