ページ 11

C++の基本的な事に付いて

Posted: 2010年5月11日(火) 01:00
by ゆうき
プログラミング初心者です。

VC++2008 Express Editionを使用しています。

プログラムがソースファイルとヘッダーファイルとリソースファイルで形成されていますが
いずれも複数作れるようです。
例えばソースファイルを追加し2個、3個と複数作っていく場合、どのような効果を期待できるのでしょうか?

というのは、自分は一つのソースファイルでプログラムを作成していて(といってもお粗末な物ですが‥)、上から下に順に実行され、そして終わるものだと勝手に思っているので、ソースファイルが別のところにもある場合、それがどのような相互関係を持つものなのかなど、色々な疑問が湧いてしまいます。

つたない者ですが、どうぞよろしくお願いします<m(__)m>

Re:C++の基本的な事に付いて

Posted: 2010年5月11日(火) 01:24
by たかぎ
いろいろな効果を期待できますが、わかりやすいものだけ...

今回、ひとつのソースファイルの中にすべて詰め込んだとしましょう。
次回以降の開発では、今回作ったコードは一切使わず、毎回ゼロから作りなおすのでしょうか?
そうではなく、再利用するのであれば、ひとつのソースファイルに詰め込まれたなかから探し出し、必要な依存関係を正確に洗い出して、コピー&ペーストすることになりますが、それがよい方法でしょうか?

あるいは、こういうこともあります。
ひとつのソースファイルに全部詰め込むとしましょう。コードは50万行あります。ファイルサイズは5Mバイト以上あります。
このソースファイルをエディタで開くときは、しばらくPCがフリーズしたようになります。
また、たった1文字修正するだけで、全ソースコードをコンパイルしなおすことになりますので、大変時間がかかります。
これはよい方法でしょうか?

他には...
プログラムを数名のチームで開発しています。ソースファイルはもちろんひとつです。
各自がバラバラに編集してつじつまがあわなくなるのを避けるため、誰かがソースファイルを編集している間、他のメンバは閲覧のみ許可されます。これによって、同時更新問題を回避します。
もちろん、全メンバが並列に編集作業を行うことはできませんので、非常に時間がかかります。
別の場所で自分が扱う部分だけを編集しておいて、後でくっつけるという作戦を取ろうとしますが、くっつける時点では、元のソースが変わってしまっているので、つじつまをあわせるのはやはり大変です。なかなかコンパイルも通りません。
これは正しい方法でしょうか?

Re:C++の基本的な事に付いて

Posted: 2010年5月11日(火) 02:43
by ゆうき
ご回答ありがとうございます!

複数のわかりやすい例を挙げてもらったので、なんとなくニュアンスがつかめた気がします。

"なんとなく"という状況ではありますが、その重要性は強く感じました。

この件についてはもっと具体性のある議論ができるくらいに自習してから、またここで質問させて頂きます。