質問するログイン新規登録

質問編集履歴

1

回答を受けての追記

2015/06/04 15:13

投稿

NUNU_E64
NUNU_E64

スコア63

title CHANGED
File without changes
body CHANGED
@@ -21,6 +21,16 @@
21
21
  参考にしたサイト一部
22
22
  [ヘッダファイルの謎(3)](http://d.hatena.ne.jp/mihael2/20031028)
23
23
  [プログラミングメモ - C++ のソースをヘッダと実装に分ける理由とか](http://qune.cside.com/archives/001334.html)
24
+ [C++ でのビルド時間を短縮するいくつかの方法](http://d.hatena.ne.jp/melpon/20101022/1287705842)
24
25
 
25
26
  関係がありそうなキーワード
26
- ・隠蔽化、循環参照、テンプレート、inline、コンパイル
27
+ ・隠蔽化、循環参照、テンプレート、inline、コンパイル
28
+
29
+
30
+ 追記(15/06/04 23:34):
31
+ ・「第三者利用」が問題なら「ライブラリとしての公開やチーム開発などコードの再利用がない個人開発」という前提になればヘッダに実装してしまっても構わないことになりますがいいのでしょうか。
32
+ ・「コンパイル時間」が問題ならマシンスペックの向上で将来的に解決されるレベルの問題であり、あくまで"現時点では"ヘッダファイルに実装を書くのは好ましくない、という話になってしまいますがそういう理解でよろしいのでしょうか。
33
+
34
+ ・結局、二度書きの手間に対して十分なメリットが確保できるか否かという話になり、好みや自己責任の話になってしまうのではと危惧しています。C++とはどんな言語なのか、なかなか思想が見えてこなくて理解が及ばないです。レイヤーの低さや速度に特徴があるが、開発効率ではC#に劣る古き業務用言語ということなのでしょうか?(あえて極端な言い方をしています)
35
+
36
+ ・(なお、私自身はヘッダで実装を書くことはないです。そこそこの規模のコードを書いたりしますしヘッダと実装は分けないとやってらんないです。自分が書いたコードを読んで構造を思い出す作業は苦行ですのでそれが不要な時点で恩恵は強く感じています。ですのでこれは主観の話ではなく言語思想,言語仕様の話として回答いただければ幸いです。)