TString編

C/C++では文字とか文字列の扱いは面倒くさいのですが、 ROOTにはTStringという便利なクラスがあります。 使わない手はないでしょう、ということで紹介しておきます。

フォーマット文字列を作りたい

1TString str;
2str.Form("Hist%d", i);

文字列を表示したい

1str.Data();

使い方の一例

複数のヒストグラムをループで生成したいときなどによく使います。

1const Int_t nhist = 10;
2TString hname, htitle;
3for (Int_t i = 0; i < nhist; i++) {
4    hname.Form("h%02d", i);
5    htitle.Form("%s;%s;%s", hname.Data(), "x", "y");
6    h[i] = new TH1D(hname.Data(), htitle.Data(), xbin, xmin, xmax);
7}