Quick actions

cmd+k|ctrl+k

Navigation

Languages

class test

Snippet info

Language

Cpp

Visibility

public

Author

ymyun74

Created

2021-05-31T03:32:04.449069Z

Updated

2021-05-31T05:10:04.78442Z

#include <iostream>
using namespace std;



// ConsoleApplication1.cpp : 이 파일에는 'main' 함수가 포함됩니다. 거기서 프로그램 실행이 시작되고 종료됩니다.
//

class sim_event
{
public:
     
    int cnt;
    int index;
    char name[10];
    void (*run)(void);
    //sim_event(int num);
    sim_event(int num, void (*fn)(void));
    void event_run(void);
};

sim_event::sim_event(int num, void (*fn)(void))
//sim_event::sim_event(int num)
{
    std::cout << "sim event() creation\n";
    index = num;
    run = fn;
    std::cout << "event index:" << "\n";
    std::cout << num;
    std::cout << "\n";
}

void sim_event::event_run(void)
{
    cnt++;
    std::cout << "event run!\n";
    //sys_test::sys_test_func();   // error... why ??? this means sim_event_run() can't use stream_on()
}

class sys_test
{
public:
    //class sim_event events[2];
    class sim_event events[2] = { sim_event(0, sys_tg_run), sim_event(1, sys_extin_run) };
    //class sim_event events[2] = { sim_event(0), sim_event(1) };

    void sim_init(void);
    void sim_run(void);
    //sys_test(int num);
    sys_test(void);
    void sys_test_func(void);
    static void sys_tg_run(void);
    static void sys_extin_run(void);
};

sys_test::sys_test(void)
{
    std::cout << "sys_test() creation\n";
  //  for (int i = 0; i < 2; i++) 
		//events[i] = sim_event();
}

void sys_test::sim_init(void)
{
    std::cout << "sim init!\n";
}

void sys_test::sim_run(void)
{
    std::cout << "sim run!\n";
    events[0].event_run();
    events[1].event_run();
    events[0].run();
    events[1].run();
}

void sys_test::sys_test_func(void)
{
    std::cout << "sys_test_func()\n";
}

void sys_test::sys_tg_run(void)
{
    std::cout << "sys_tg_run()\n";
}

void sys_test::sys_extin_run(void)
{
    std::cout << "sys_extin_run()\n";
}

int main()
{

    std::cout << "Hello World!\n";
    //sys_test test( );
    sys_test test;
    test.sim_run();
}
INFO