> namespace std { using ::memset; }
> 昔はこんなようなことを自前のラッパでやってた気がしますが、
> 他に回避策ってあったのでしょうか>VC6
結局、VC6を視野に入れて互換性を保つには、
#include <cstring>
ではなく、
#include <string.h>
を使う方がよいと思います。
それが嫌なら、VC6を相手にしないことです。
> 参考書を見て書いたのですが、string.hをインクルード
> すればできると書いてあったのですが。。。
参考書名は?
> string a;
> a = Hello! World!!;
> cout << a << endl;
普通は
cout << a.c_str() << endl;
じゃないの?
> 普通は
> cout << a.c_str() << endl;
> じゃないの?
なんでこれが普通なのでしょうか?
cout << a << endl;
のどこが'普通でない'のでしょうか?
> なんでこれが普通なのでしょうか?
> cout << a << endl;
> のどこが'普通でない'のでしょうか?
大人気無い...
確かに普通って言い方は良くないですかね.
コンパイラは騙せるかもという一つの手法ですわ.
確かに・・・
----
#include <iostream>
using namespace std;
int main()
{
string a;
a = Hello! World!!;
cout << a.c_str() << endl;
return 0;
}
----
ですね(^^;
これなら、コンパイルも実行も問題ないようです
# いや、当たり前って言えば当たり前ですが(^^;
# で、結局のところ・・・件のコードがまんま載ってる本なら「どうなの?」ってなるけど、
# 質問者が参考にして(まんまを写しただけではない)書いたってだけなら本に悪いとこはない
のかも??
# string.h をインクルードするって書くのはどうかと・・・ですが(^^;
> 参考書を見て書いたのですが、string.hをインクルード
> すればできると書いてあったのですが。。。
おーい!!参考書名は-!?
> おーい!!参考書名は-!?
もういいやん、言う気があってログ見てたら書いてるやろうし
あんましやると「悪いこと言ったんかな?」とか思って逆に言い辛くなると思う