大きなプログラムを多数の.cppファイルに分割しました。 display.cpp、gui.cpp、display.h、gui.hなど...複数のソース.cppファイルの問題
これらのファイルは読みやすさのために区切られていますが、必ずしも依存性スキームを示すものではありません。
最初は、ディスプレイからの関数がguiから関数を呼び出すので、コンパイルするのに苦労しました。逆もまた同様です。いずれにしても最初に含めるものは、もう一方の機能に依存します。しかし、私は最終的にすべての.hファイルをインクルードしてから、すべての.cppファイルを私のメインプログラムに含める必要があることを知りました。
例は、main_program.cppに:
#include "display.h"
#include "gui.h"
#include "display.cpp"
#include "gui.cpp"
は、残念ながら、私はまた、コンパイルするために、私はVisual Studioで、「ソース」コードと見なされているものから他のすべての.cppファイルを削除しなければならなかったことに気づきましたデバッガ。そうすれば、main_program.cppがコンパイルされ、必要に応じて他のファイルもコンパイルされます。 "source"サイドバーにdisplay.cppとgui.cppを含めるとエラーになります。
これはおそらく間違ったやり方であり、私は何か間違っているように感じています。私はすべてのソースファイルをサイドバーに入れて、コンパイルしておきたいと思っています。もちろん、上記は単なる例であり、2つではありませんが、お互いの関数を呼び出す10個の.cppファイルによく似ています。これをよりうまく設計する方法についてアドバイスしてください。
"display.h"と "gui.h"の代わりに、私のプログラムが "functions.h"のように1つのファイルで使用するすべての関数を定義することができます。なぜ私はそれを前に考えなかったのか分からないが、それはうまくいくかもしれないようだ。 – pete
待って!やめる!あなたが答えを得るまで遠くに行かないでください! : –
hahaまあ、アイデアはかなり低い機会費用を持っているし、私は何もしたくない。たとえデザインが恐ろしいものであっても、元に戻すことができる。 – pete