問題タブ [tr1]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - C++: 関数自体と同じように動作する関数ラッパー
任意の関数をラップでき、関数自体と同じように呼び出すことができるラッパーを作成するにはどうすればよいですか?
これが必要な理由: 関数をラップし、関数自体と同じように動作し、さらにすべての呼び出しの累積時間をログに記録できる Timer オブジェクトが必要です。
シナリオは次のようになります。
Timer
このクラスを書くにはどうすればよいですか?
私はこのようなことを試みています:
gprof
(ところで、ランタイムをプロファイリングするためのツールやその他のツールを知っていますが、そのようなTimer
オブジェクトを使用して、選択したいくつかの関数のランタイムをログに記録する方が私の目的には便利です。)
c++ - tr1::unordered_set 和集合と交差
c++でtr1 :: unordered_set型のセットの交差と結合を行う方法は? 私はそれについて多くの参照を見つけることができません。
参照とコードは高く評価されます。どうもありがとうございました。
更新: tr1::unordered_set は、交差、結合、差の関数を提供する必要があると推測しました..それがセットの基本的な操作であるためです。もちろん自分で関数を書くことはできますが、tr1から組み込み関数があるかどうかは疑問です。どうもありがとうございました。
c++ - さまざまな種類の shared_ptr の違い
と次の (で)の間boost::shared_ptr
に違いはありますか?std::tr1::shared_ptr
C++0x
std::shared_ptr
あるものから別のものへの移植にはオーバーヘッドがありますか、それとも基本的に同じですか?
c++ - C++ TR1: normal_distribution の使用方法は?
C++ STD TechnicalReport1拡張機能を使用して、正規分布に従って数値を生成しようとしていますが、このコード (この記事から適応):
1 つの「生成中...」ログ メッセージのみを出力し、for ループを決して終了しません。代わりにコメントアウトしたディストリビューションを使用すると、終了するので、何が間違っているのか疑問に思っています。何か案が?
どうもありがとう!
c++ - C++でのインクルードファイルのコンパイル時の存在を確認します
最初はBoost.Regexに依存するポータブルC++ライブラリコードを作成しようとしていますが、コンパイラがサポートしているのでTR1に移行し、std::tr1名前空間から移動した後に最終的にC++0x仕様に移行します。 stdに。これが私がプリプロセッサでやりたいことのためのいくつかの擬似コードです:
確かに、それはすべてプリプロセッサディレクティブに含まれている必要がありますが、それを実現する方法を知っていれば、ここでは質問しません。:)
c++ - TR1 をどのように含めますか?
コンパイラが異なれば、TR1 についての考え方も異なるようです。G++ は次のタイプのインクルードのみを受け入れるようです:
Microsoft のコンパイラは次のもののみを受け入れますが、
私がTR1を理解している限り、Microsoftのやり方は正しいものです。
G++ に 2 番目のバージョンを受け入れる方法はありますか? 一般に、TR1 をポータブルな方法でどのように処理しますか?
c++ - std::tr1::weak_ptr を使用してコンテナーで std::remove を使用するにはどうすればよいですか?
STL コンテナーがある場合、以下の例のように削除できるポインターのリストを言います。最初にロックする必要があるため、weak_ptrs のコンテナーでは比較できないため、これは機能しません。私に何ができる?
c++ - ネストされたペアへのアクセス
ペアを分解するには、次のようにします。
入れ子になったペアにアクセスするにはどうすればよいでしょうか?
たとえば、ベクターを補足マップに含まれるアイテムと、補足マップに含まれていないアイテムに分割したい場合は、次のようにしました。
ここで 2 番目の問題があります。アプリケーションの実行中に user_info のステータス bool が変更される可能性があり、後で補足マップに含まれているだけでなく、true のステータス bool を持つアイテムでベクトルを再分割したいと考えています。 .
ただし、ネストされたペアの 2 番目の項目へのアクセスに問題があるようです。
次のことを試しましたが、ネストされたペアにアクセスできないようです!
c++ - テンプレート パラメーターを指定せずにテンプレート クラスを型定義する
利用可能なTR1ライブラリがあるかどうかに応じて、unordered_mapまたはstd::mapのいずれかをtypedefしようとしています。しかし、テンプレート パラメーターを指定したくありません。これまで読んだことから、公式の c++0x 標準が利用可能になるまで、引数なしでテンプレートを型定義することはできません。では、これに対するエレガントな回避策を知っている人はいますか?
c++ - for_each と bind を使用してベクトル内の文字列を逆にする
単一のコマンドを使用して、単一の「単純な」行でstring
に含まれる s をどのように逆にすることができるかを考えていました。vector
for_each
ええ、私はそれがカスタムファンクターで簡単であることを知っていますが、それを使用して実行できないことを受け入れることはできませんbind
(少なくとも私はできませんでした)。
編集: これらの素晴らしいソリューションに感謝します。ただし、私にとっての解決策は、Visual Studio 2008 機能パック/SP1 に付属するtr1::bindを使用しないことでした。期待どおりに動作しない理由はわかりませんが、その通りです ( MS でさえバグがあることを認めています)。たぶん、いくつかの修正プログラムが役立つでしょう。
boost::bind を使用すると、すべてが希望どおりに機能し、非常に簡単になります (ただし、面倒なこともあります :))。そもそもboost::bindを試してみるべきだった...