John Carmackの崇拝者として、私はId Techの公開されているコーディング規約のドキュメント(興味がある場合はftp://ftp.idsoftware.com/idstuff/doom3/source/CodeStyleConventions.doc )を読んでいて、コンベンション私は完全には理解していませんでした:
doubleが明示的に必要でない限り、浮動小数点値の精度仕様を使用してください。
float f = 0.5f
それ以外の
float f = 0.5;
と
float f = 1.0f;
それ以外の
float f = 1.f;
これらはどう違うのですか?
最初の例(後者は内部でダブルからフロートへの変換を行う)の2つの違いを理解できますが、キャッチするのに愚かなコンパイラが必要なだけで、同じバイトコードを生成するのではないかと思いますが、実行時の違いはありません。
しかし、浮動小数点値の宣言に末尾の0を追加すると、状況が変わる場合はありますか?