ページ

2014年3月22日土曜日

ActiveBasic to C++: ActiveBasicで使っていた関数を再現する

投稿がかなり遅れましたがこの間にかなりたくさんのことを学んでしまって全部記事にすると大変なので、ここを新しいスタートラインにして投稿を続けます。

それはともかく、C++を学んでいく中で分かったことがあります。それは
文字列がとんでもなく扱いにくい。
覚悟はしていましたが、ここまで面倒とは・・・
と思っていたんですが、こんなページを見つけました。(このページを見つけるよりも見つけやすいけれども・・・)

http://handasse.blogspot.com/2007/06/c_22.html

<sstream>をインクルードすれば文字列と数値の変換が簡単にできるのか。
でもいちいち stringstream なんて打ったり、初期化したりするのは面倒くさい。そこでActiveBasicで使っていた Val() 関数や Str$() 関数みたいなのを作ってみました。



#include<string>
#include<sstream>

int val(std::string in){
 int out;
 std::stringstream ss;
 ss << in;
 ss >> out;
 return out;
}

std::string str$(int in){
 std::stringstream ss;
 ss << in;
 return ss.str();
}

これは効率的にどうなのかは分かりません。上級者から見たら笑われるようなプログラムかもしれませんが、一応これで使えるみたいなのでしばらくはこれを使うようにします。
それと関数名に $ を使えるか心配だったんですが、余裕でいけました。

今回はここまで

0 件のコメント:

コメントを投稿