• 締切済み

【VC++2008】オブジェクトの利用法

お世話になります。 VC++2008の使い方について質問があります。 ゲームを作成するため、よく使うメソッドなどをクラス化し一度外部に吐き出して、他のプロジェクトからもカプセル化したオブジェクトを利用できるようにしたいと考えています。 私は普段VBを中心に利用していてそちらでは簡単に出来るのですが、VCでのやり方が分からず困っています。 どのようにすれば良いのか本当に最初の部分から細かく教えていただけるとありがたいです。 ホームページなどがありましたら紹介していただけると助かります。 よろしくお願いします。

みんなの回答

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.3

ちょっと気になったのですが > あまりにも情報が無いために、外部に出力するのはあきらめて > メインソースコード内にクラスを大量に書こうかな――などと考えています。 > クラスだけでも1000行超える予定ですので出来れば外部に保存したいのですが・・・ もしかして「分割コンパイル」を御存じない、ってことはないですか?

  • gentoo314
  • ベストアンサー率41% (15/36)
回答No.2

まず基本的なDLLの作成、参照は理解されていますか。 そこの作り方ではまっているのなら、そこから勉強したほうがいいと思います。

  • gentoo314
  • ベストアンサー率41% (15/36)
回答No.1

単純に、DLLにクラスを実装して呼び出せばいいと思います。 他の言語や、オブジェクトを別プロセス内、別PCに生成するならCOM化も視野に入れてもいいかと思います。

anpauro11
質問者

補足

正直なところ.dllや.libなどの出力方法、VCへの組み込み方法、組み込んだライブラリのの利用方法など サイトなどの情報は書き方がまちまちで、"本当にこのステップは必要"という事が分かりません。 あまりにも情報が無いために、外部に出力するのはあきらめて メインソースコード内にクラスを大量に書こうかな――などと考えています。 クラスだけでも1000行超える予定ですので出来れば外部に保存したいのですが・・・

関連するQ&A

  • VC++ ATLコントロールのインスタンス

    VC++2008で、ATLコントロールクラスを追加し、 そのクラスにPublicメソッドを追加しました。 (IXxxxインタフェースを右クリック→追加→メソッドの追加) この追加したメソッドを、同じプロジェクト内のMFCクラスから 呼びたい(実行したい)と思っています。 ただ、ATLコントロールクラスがインスタンスできない為、 呼ぶことができません。 (「抽象クラス型のオブジェクトは使用できません」のエラーが出る) MFCクラスのメソッド→ATLコントロールクラスのメソッドを実行 というのは、不可能なのでしょうか? ご存知の方がおられましたら情報をください。 宜しくお願いします。

  • VCのクラスをVBで利用

    VC++6で作ったクラスをDLLを使うなどしてVB6から利用することは出来ますか?

  • VC++6.0で作成したクラスをVB6.0で使うには?

    初めて投稿します。 プログラミング初心者の為、初歩的な質問になるかもしれませんがご容赦下さい。普段、主にVisual Basic6.0(以下VB6.0)でプログラミングを行なっています。 VB6.0には演算子のオーバーロードする機能がない(?)ため、Visual C++6.0(以下VC++6.0)でプログラミングを行い、VC++6.0で作成したクラスをVB6.0で呼び出して使用したいと考えています。 インターネット上でいろいろと調べてみたのですが、その方法がわからず投稿させていただきました。VC++6.0で作成したDLLの中の関数をVB6.0で呼び出して使用する方法はわかったのですが、クラスということになると、DLLでは無理なのでしょうか? どなたか、VC++6.0で作成したクラスをVB6.0で呼び出す方法、または勉強方法(教材)などを教えていただけると助かります。 宜しくお願いいたします。

  • VBがオブジェクト指向言語でない理由

    一般的にVBはオブジェクト指向ではない(VB7でその方向へ向かう)といわれていますが、実際にVBをさわり始め、いろんな本を読んでみると、 1)クラスが作成でき、構造体と関数を1つにまとめ、メンバ(プロパティ・メソッド)を定義付けできる 2)Implementsステートメントでクラスの継承が出来る と、ある程度のオブジェクト指向言語の要件を備えているように見えます。 といっても私はJAVAもSmallTalkも知らないので、「何が真のオブジェクト指向か」というのを良く判っていないのかも知れないのですが。 しかしC++関連書などを読んでいると出てくるクラスの使用例などはVBのそれと大差なく、なぜクラスの作成もできて、継承も可能なVBがオブジェクト指向ではないのか? という疑問がわいてきました。 JAVAとは何が違うのか? これが出来ないからオブジェクト指向ではないのだ! という理由をご存じの方、回答もらえればうれしいです。

  • オブジェクト指向で分からないことが。

    オブジェクト指向で分からないことが。 1.クラスAから、文字列引数を指定して、クラスBがインスタンス化されたオブジェクトを取得する。 (getInstance的メソッド)引数の文字列にマッピングされたオブジェクトを取得する感じ。 2.1.で取得したオブジェクトから、各オブジェクトを取得するメソッドを呼び出し、オブジェクトを取得する。(仮にクラスC) 3.2.で取得したクラスCのメソッドを呼び出す。 このとき、クラスCのメソッド内で、1.で利用された引数を利用したいです。 そもそもクラスCは、1.を経てしか取得されないものの為、再度1.の引数を渡したくありません。 内部的な値なので、スコープpublicのセッターを用意して、クラスA内からの書き換えが出来ては困ります。 こういう場合、どういうクラス設計を行えば良いのでしょうか?

    • ベストアンサー
    • Java
  • VC#2008自作クラスメソッドツールチップ

    VC#2008で自作クラスを作成しました。 そのクラスのメソッドを利用する際に、ツールチップで使い方を表示させたいのですが、可能でしょうか?

  • VC++ 2010 expressの入力支援

    VC++ 2010 Expressでクラスのオブジェクトを作成時のメソッドやプロパティの入力支援機能というのはないのでしょうか? Code Gear C++ Builderなどの”ctrl + スペース”に相当する機能はありませんでしょうか?

  • VC++でオブジェクトのコレクション格納

    すみません。 教えてください。 VC++言語を勉強しているのですが、不明点があるため教えていただきたいのです。 <VBサンプル> Set Col = new Collection For i = 1 To nMaxCount Set objIF = New iniFile 'iniファイル設定クラス With objIF .iniDirPath = mstriniDirPath .iniFileName = mstriniFileName nResult = .iniStart 'クラスの実行関数 If nResult < 0 Then iniReadRecStack = nResult Exit For End If ' コレクションにiniファイルクラスオブジェクトを格納する。 col.Add objIF, CStr(Count) Next 上記のようなことをVC++でやりたいのですが、可能でしょうか。 もしよければ、コレクションに格納する方法を教えてください。 よろしくお願いします。

  • BCBでVC++のDLLを利用するために

    C++Builder5で、VC++で作ったDLLを利用する必要に駆られてしまいました。 提供されているのはDLL本体とヘッダの2点で、BCBからリンクするために、implibを使ってdllからlibの作成をし、プロジェクトに加え、ヘッダをインクルードしました。続けて試しにコードを書いたところ、 '外部シンボル_initialize_libraryが未解決' との表示。(initialize_libraryとはDLL内にある関数です。) 調べてみたところ、 1.呼び出し規約は標準で __stdcall 2.VC++ では、_ がシンボル名の頭に付く 3.Builder ではつかない これで食い違いが生じているんだと思うのですが、更に調べると、モジュール定義ファイルにて再定義をすれば良いとの結論になりました。 BorlandのFAQも見たのですが、書式が理解できなくて・・・そこで質問させて頂きたいのですが、単純にproject名.defを作って、 >IMPORTS >initialize_library=_initialize_library とやってプロジェクトに加えれば良いのでしょうか? ソース本体にextern "C" というのも必要なようですが、こちらの記述も教えて頂けたら嬉しいです。

  • VC++/MFCでリフレクション

    Javaでは、ObjectのgetClass()でClassクラスの インスタンスが取れ、実行時に指定した、メソッド名や、引数で、動的にメソッドを呼びだすようなリフレクション機能が使用できます。 同様のことをC#でも実装したことがあります。 VC++/MFCにて、このようなリフレクションをやるやり方を教えてください。 C++の標準あるいわ、MFCの機能など、どちらでもよいです。 メタクラス型のようなものを実行時に取得して、リフレクションする方法だと思います。 質問の内容はVC++.NETやVC++/CLIではないです。そちらのほうでのやり方は既に発見しました。

専門家に質問してみよう