###分割されたC++のファイルを結合してビルドしたい
VisualStudioCommunity2015を使っているのですが、使い方が良くわかっていません。
以下のソースコードをビルドしたいのですが、やり方が分かりません。
VisualStudioの使い方の乗っているサイトがあれば教えて下さい。
また、お手数でなければ以下のソースをVisualStudio2015でビルドするにはどうしたらいいのか、教えて頂ければと思います。
###ソースコード
interface.h
C++
1// IChap4_1インターフェース 2interface IChap4_1 3{ 4 virtual void FuncA(void) = 0; 5}; 6 7// IChap4_2インターフェース 8interface IChap4_2 9{ 10 virtual void FuncB(void) = 0; 11}; 12 13// インターフェース作成関数 14extern void CreateInstance(IChap4_1 **); 15extern void CreateInstance(IChap4_2 **); 16 17// インターフェース開放関数 18extern void Release(IChap4_1 *); 19extern void Release(IChap4_2 *);
component.cpp
C++
1#include <objbase.h> 2#include <iostream.h> 3#include "interface.h" 4 5/////////////////////////////////////// 6// Chap4クラス 7class Chap4 : public IChap4_1, public IChap4_2 8{ 9 // Chap4_1インターフェース 10 virtual void FuncA(void); 11 12 // Chap4_2インターフェース 13 virtual void FuncB(void); 14}; 15 16void Chap4::FuncA(void) 17{ 18 cout << "Chap4::FuncAが呼ばれたよ~" << endl; 19} 20 21void Chap4::FuncB(void) 22{ 23 cout << "Chap4::FuncBが呼ばれたよ~" << endl; 24} 25 26/////////////////////////////////////// 27// インターフェース作成関数 28extern void CreateInstance(IChap4_1 **pIFace) 29{ 30 Chap4 *pChap4 = new Chap4; 31 *pIFace = (IChap4_1 *)pChap4; 32 33 cout << "IChap4_1がCreateInstanceされたよ~" << endl; 34} 35 36extern void CreateInstance(IChap4_2 **pIFace) 37{ 38 Chap4 *pChap4 = new Chap4; 39 *pIFace = (IChap4_2 *)pChap4; 40 41 cout << "IChap4_2がCreateInstanceされたよ~" << endl; 42} 43 44/////////////////////////////////////// 45// インターフェース開放関数 46extern void Release(IChap4_1 *pIFace) 47{ 48 delete (Chap4 *)pIFace; 49 cout << "IChap4_1がReleaseされたました~。" << endl; 50} 51 52extern void Release(IChap4_2 *pIFace) 53{ 54 delete (Chap4 *)pIFace; 55 cout << "IChap4_2がReleaseされたました~。" << endl; 56}
client.cpp
C++
1#include <objbase.h> 2#include <iostream.h> 3#include "interface.h" 4 5int main(void) 6{ 7 // IChap4_1インターフェースを作成して、使用して、開放する。 8 IChap4_1 *pChap4_1; 9 CreateInstance(&pChap4_1); 10 pChap4_1->FuncA(); 11 Release(pChap4_1); 12 13 // IChap4_2インターフェースを・・・。 14 IChap4_2 *pChap4_2; 15 CreateInstance(&pChap4_2); 16 pChap4_2->FuncB(); 17 Release(pChap4_2); 18 19 return 0; 20}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/13 11:17
2016/11/13 11:22
2016/11/13 11:24
2016/11/13 11:32
2016/11/13 11:35
2016/11/13 12:32
2016/11/13 12:42
2016/11/13 12:54
2016/11/13 13:13
2016/11/13 13:19
2016/11/13 14:33