Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<ctime>
- #include<cstdlib>
- #include <clocale>
- #define interface struct
- //#include"Header.h"
- using namespace std;
- interface IX {
- virtual void _stdcall FX1() = 0;
- virtual void _stdcall FX2() = 0;
- };
- class CA :public IX {
- public:
- virtual void _stdcall FX1() { cout << "CA::FX1" << endl; }
- virtual void _stdcall FX2() { cout << "CA::FX2" << endl; }
- };
- class CB :public IX {
- public:
- virtual void _stdcall FX1() { cout << "CB::FX1" << endl; }
- virtual void _stdcall FX2() { cout << "CB::FX2" << endl; }
- };
- void ff(IX& pix)
- {
- pix.FX1();
- pix.FX2();
- }
- int main()
- {
- setlocale(LC_ALL, "rus");
- CA pA;
- CB pB;
- IX* pix;
- pix = &pA;
- pix->ff(); //вызов методов CA
- pix = &pB;
- ff(*pix); //вызов методов СB
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement