さて、前章まではいわゆるC++の古典的(?)ライブラリを使用してきましたが、
この章ではいわゆる標準ライブラリの使い方を解説します。
と、言ってもプログラムの書き方はほとんど同じです。
.netで#include <iostream.h>とすると
warning C4995: '_OLD_IOSTREAMS_ARE_DEPRECATED': 名前が避けられた #pragma として記述されています。というワーニングが出たと思います。 このワーニングを避けるには
#pragma warning(disable : 4995)をプログラムの最初の方に書いておきます。これでワーニングが出なくなりますが 将来サポートされないプログラムでは不安ですね。
そこで、標準ライブラリでは次のような書き方をします。
#include <iostream>「.h」がとれただけじゃないか!! と思われるかもしれませんが、これでプログラムを書くと・・・
// 間違ったプログラム
#include <iostream>
int main()
{
cout << "test" << endl;
return 0;
}
エラーが山のように出てきます。これは、次のように修正する必要があります。
//正しいが面倒くさい
#include <iostream>
int main()
{
std::cout << "test" << std::endl;
return 0;
}
これで、エラーもワーニングもなくなったと思いますが、面倒くさいですね。
// newcpp.cpp
#include <iostream>
using namespace std;
int main()
{
cout << "test" << endl;
return 0;
}
これで、本文の方は今まで通りとなります。さて、古いバージョンのものも使う必要があり、両方を使い分けたい というような場合は、次のような書き方も可能でしょうか。
// newcpp.cpp
//#define MYOLD
#ifndef MYOLD
#include <iostream>
using namespace std;
#endif
#ifdef MYOLD
#include <iostream.h>
#pragma warning(disable : 4995)
#endif
int main()
{
cout << "test" << endl;
return 0;
}
古いライブラリを使用したいときは#define MYOLDのコメントアウトをはずします。ま、いろいろな方法が考えられますね。
Update Jun/25/2002 By Y.Kumei