関数の実行時間を測定するために、私は両方を使うことができます。しかし、<chrono>
と<ctime>
の違いは何ですか?私は別のものの代わりに1つを選ぶべきですか?<chrono>と<ctime>の違いは何ですか?
答えて
ctime
はCスタイルのヘッダーです。古く、タイプセーフではなく、chrono
ほど正確ではありません。 chrono
はC++で推奨されるオプションです。現代的なC++ヘッダーであり、タイプセーフで、ハードウェアが可能な限り正確であり、機能を拡張しています。さらに重要なのは、C++ロジック(Cではなく)に従うロジックで、特定のものがより自然/現代の多くの言語機能(スレッド、例外など)を認識することが期待されるかもしれません - ctime
については同じ仮定をすることはできません。それでも、ctime
(またはtime.h
)のユースケースがいくつかあります。いくつかのC APIと話をする必要があるときや、古いコードベースに依存しているときや、別の種類のロジックに従ったライブラリを使用するときなどです。 C++は実用的であり、いかなる点でも「純粋」ではないように設計されています。このため、ctime
と、古くなったすべてのヘッダ、構文、言語機能は、プログラマが使用しないようにしても、まだそこに残っています。
ctime
は古い学校です。その唯一の用途は、現在の時点からの日付取得(C++には適切な標準のdatetimeライブラリがないため)です。一般的な時間が必要な場合はchrono
を使用してください。 system_clock::time_point
を日付/時刻にする必要がある場合は、ctime
を使用してください。
なぜ 'ctime'が駄目なのか? –
'ctime'よりも' system_clock :: time_point'をフィールドの日付/時刻構造に変えるより良い方法です:http://howardhinnant.github.io/date_v2.html :-) –
@YeeLiu: 'ctime'はそうではありません"タイプセーフ"。例えば、 'difftime'は' duration'の代わりに 'double'を返します。また、 'tm.tm_sec'は' seconds'の代わりに 'int'型です。この型の安全性の欠如は、コンパイラが(例えば)時間単位で非論理代数を実行する論理エラーをチェックできないことを意味します。 –
- 1. aspxの<%:と<%=と<%#の違いは何ですか?
- 2. cout << coutとcout <<とcoutの違いは何ですか?
- 3. ASP.NET MVCで "<%="、 "<%:" "<%#"の違いは何ですか?
- 4. ASP.NET MVCの<%#と<%=の違いは何ですか?
- 5. <?の違いは何ですか?エコー __();と<= __();
- 6. <?php ?>と<? ?>の違いは何ですか?
- 7. Task <>とIAsyncOperation <>の違いは何ですか
- 8. <tiles:add>と<tiles:put>ストラットの違いは何ですか?
- 9. <f:viewParam>と<f:param>の違いは何ですか?
- 10. <<と+ =の違いは何ですか?
- 11. NHibernate Query <>とQueryOver <>の違いは何ですか?
- 12. &と&&、|の違いは何ですか? || R?</p> <pre><code>&, && |, || </code></pre> <p>用法の違いを何:
- 13. ArrayList <?>、ArrayList、ArrayList <Object>の違いは何ですか?
- 14. シェルスクリプトで$ @と$ *の違いは何ですか?私<code>script.sh</code>で
- 15. ルビーのself.methodとクラス<< selfのメソッドの違いは何ですか?
- 16. .NetのReadOnlyCollection <T>とReadOnlyCollectionBuilder <T>の違いは何ですか?
- 17. html文書の "<!DOCTYPE ...."と "<!DOCTYPE>"の違いは何ですか?
- 18. <html:submitタグと<input type = "submit"の具体的な違いは何ですか?
- 19. <jsp:include page = ...>と<%@ include file = ...>の違いは何ですか?
- 20. os.getuid()とos.geteuid()の違いは何ですか? <code>os.getuid()</code>ため
- 21. Response.Writeと<%= %>の実際の違いは何ですか?
- 22. mysqlの '!='と '<>'の違いは何ですか?
- 23. <deployment retail = "true">とdebug = "false"の違いは何ですか?
- 24. <=との違いは何ですか:= VHDL
- 25. (function(x:<_))= xと(function(x:_))= xの違いは何ですか?
- 26. Ember.js setupControllerとの違いは何ですか<Name>コントローラ
- 27. AtomicReference <Integer>とAtomicIntegerの違いは何ですか?
- 28. 違いは<?php ... ?>と<? ... ?>を使用して何
- 29. 1 << 0とは何ですか?
- 30. <の違いは? <?php
秒とナノ秒近代的なユーザビリティと古典的な半使用性の比較 –
40年後のイデオロギーの大幅な変化。 – user4581301