自分のブログ名

物理の空き地 by M.E_K

日々の学び、感じたことを書いております。ブログ移行中->https://physics-mek.com

移転しました。

リダイレクトします。

visual studio C/C++ 外部ライブラリ「boost」 format関数を使って楽をする

移転しました。

リダイレクトします。

pythonのようなformat関数がC++には標準でなかった。pythonのformatが便利すぎたので、C++でも同じように使える外部ライブラリ「boost」を使ってみた。
https://www.boost.org/users/history/version_1_74_0.html

上記のURLでboostのzipファイルをダウンロードし、展開する。600 MBほどでそこそこ時間がかかる。展開が出来たら、次はVisual Studioを開いて環境変数を設定する。

format関数の使い方

外部ライブラリを使えるように環境変数を設定しなければいけない。
f:id:Monster_K:20201011144622j:plain
インクルードディレクトリにダウンロードしたboostディレクトリを書く。
C直下であれば、C:\boost_1_74;となる。コードについては以下のようだ。

boost::format(書式文字列)%加えたい値;

値を加える場所を指定する時には、%1%のように番号をつけることで増やせる。0始まりでないのでご注意。

実践例

#include <iostream>
#include <boost/format.hpp>

int main()
{
	std::string name = "Monster_K";
	int old = 22;
	std::cout << boost::format("He is %1% and %2% years old.") % name % old<< std::endl;
}

変数ならもちろんなんでも扱えるので非常に便利。