*C++でのライブラリ構築方法 introeにはライブラリの作り方がありますが、それはC版のもので、関数の宣言・定義しかありません。そこで、クラスのライブラリが使いたいなと思って作ろうと思っても、作り方が分からない。 introeみたいな、ヘッダファイルには宣言のみを書き、各ファイルにそれぞれ分けて定義するような方法でクラスの宣言・定義が出来ないものかと考えております。(そのような方法以外でも、こうすればライブラリが作れるよ、といった情報もお待ちしております。) どなたか教えてください。よろしくお願いします。 by uchan ***この件はすでに解決いたしました。 *コメント -ヘッダファイルにはクラスの宣言を書き、メンバ関数の中身は書きません。そしてメンバ関数の中身をcppに書けばいいのです。 -- [[K]] SIZE(10){2004-10-05 (火) 17:49:46} -なぜクラスライブラリが必要になるのかわかりませんが、[[VC++ONosa_dir2]] の情報があれば十分だったので試しに作ったものを添付します。 -- ''bayside'' SIZE(10){2004-10-05 (火) 17:48:52} &ref(sample.zip); --helloc4.cppはhellolib.libを使います /* "helloc4.cpp":helloをC++言語で記述した例 */ /* stack:4k malloc:1k */ extern "C" { #include <guigui00.h> void OsaskMain(); } #include "hellolib.h" void OsaskMain() { helloc4 h; // Cにはコンストラクタがないので } --hellolib.cppはライブラリー化したHello,Worldクラスです --他に必要なMakefileや改変したguigui00.rulを同封しています -ここまでできればBayGUIも簡単に移植できちゃうじゃん(笑)とりあえず画面全部を占めるウィンドウでも作ってやるかな・・ -- ''bayside'' SIZE(10){2004-10-05 (火) 17:55:38} -川合さん、ベイサイドさん、お返事ありがとうございました。おかげで、クラスのライブラリーを作ることが出来ました。クラスライブラリが必要になる理由ですが、単に自分がそうしたいからです。C++でプログラムを作ろうと思うと、どうしてもクラスのライブラリが必要になってきます、ってかいたので、誤解を生んでしまったのかな。訂正しておきます。 -- ''uchan'' SIZE(10){2004-10-05 (火) 18:35:50} #comment
(This host) = http://osask.net