C#が設けられているフォーマットと値を持つ新しい文字列を返すいい静的メソッドC++インライン書式文字列、数値変換
String.Format(string, params string[]);
を有しています。 C++に相当するものはありますか?私はlog4cxxを使用して、ログレベルDEBUGが有効でない場合、exprが評価されることはありませんように、短絡評価を使用しています
LOG4CXX_DEBUG(logger, expr);
のようなマクロを利用したいだから
理由があります。私はほぼ効率が短いから出てくるようがありませんので、最初の文字列を割り当てて、フォーマットする必要がありますので、目的を破っている
CString msg;
msg.Format(formatString, values...);
LOG4CXX_INFO(_logger, msg);
:
は現在、C++で、私はこのようにそれを行います回路論理。
数値の値を使用して簡単なログを作成しようとすると、同様の問題が発生します。これは、コンパイルされません。もう一度puporseを破る
CString asStr;
asStr.Format("%d", _some-double_);
LOG4CXX_DEBUG(_logger, "the price is " + asStr);
:
LOG4CXX_DEBUG(_logger, "the price is " + _some-double_);
は、だから私はこのような何かを書くことに終わります。
私はC++の専門家ではないので、知識の豊かな人々が助けることを望んでいます。
ありがとうございます!
少なくとも*いくつかの*メモリを割り当てる必要があるとすれば、オブジェクトの上にPOD配列を割り当てる方がはるかに高速ですので、sprintf/char配列ルートを使用します。 – GRB