std::bitset の to_string() について – プログラミング – Home

通知
すべてクリア

[解決済] std::bitset の to_string() について


ouh
 ouh
(@ouh)
ゲスト
結合: 18年前
投稿: 3
Topic starter  

初めて質問させていただきます ouh と申します。

std::bitset を使ってみようとしたところちょっとわからないことが
出てしまいました。VC++ 6.0 では以下のコードをコンパイルできます。

#include <iostream>
#include <string>
#include <bitset>
int main() {
std::bitset<4> b((unsigned long)4);
std::string s = b.to_string();
std::cout << s << std::endl;
return 0;
}

ところが、VC++ .net 2003 や BCC5.5 ではエラーになってコンパイル
できません。VC++ .net 2003 では以下のようなエラーがでます。
ただし VC上でコンパイルしようとしたのではなく、cmd.exe で

cl -GX xxx.cpp
(BCC5.5では bcc32 xxx.cpp)

と打っています。

error C2783: 'std::basic_string<_Elem,_Traits,_Ax>
std::bitset<_Bits>::to_string(void) const' : '_Elem'
用のテンプレートの引数を減少できませんでした。

もしかして to_string() というのは古いものでいまでは使われない
といいますかサポートされないのでしょうか?
それとも上に載せましたコードは完全に間違ったコードなのでしょう
か?

こちらの過去ログを調べましたら、以下のようにすればいい、という
ことはわかりましたので何も差し支えはないのですが気になります。

std::ostringstream oss;
oss << b;
std::cout << oss.str() << std::endl;

または出力したいだけなら
std::cout << b << std::endl;

簡単でいいのですが...

to_string() の件についてどなたか教えていただけないでしょうか?
よろしくお願いいたします。


引用未解決
トピックタグ
es
 es
(@es)
ゲスト
結合: 22年前
投稿: 17
 

http://msdn.microsoft.com/library/default.asp?url=/library/en-
us/vcstdlib/html/vclrfbitsettostring.asp
http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-
8&q=bitset+to_string&num=50
非テンプレートメンバ関数版は、テンプレートメンバ関数をサポートしてない処理系の場合のよ
うです。


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 22年前
投稿: 1301
 

std::string s = b.to_string< char,std::char_traits<char>,std::allocator<char> >
();


返信引用
ouh
 ouh
(@ouh)
ゲスト
結合: 18年前
投稿: 3
Topic starter  

まさかこんなに早くレスをいただけるとは思っておりませんでしたので
BS2でのんびり『男はつらいよ』など見ておりました。すみません。
es様、επιστημη様、ありがとうございます。

お教えいただいた MSDN Library のところ拝見しました。
BCC5.5で確かに

std::string s = b.to_string< char,std::char_traits<char>,std::allocator<char> >
();

をコンパイルできました。
VC++ 6.0 でコンパイルできるかどうかは月曜日に会社に行かないと確認
できませんが通るはずですね。

納得です。
これで解決とさせていただきます。


返信引用
ouh
 ouh
(@ouh)
ゲスト
結合: 18年前
投稿: 3
Topic starter  

すみません、VC++ 6.0 では

std::string s = b.to_string();

で通るんでした。

VC++ .net 2003 で今確認いたしました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました