C ++创建决定类创建共享指针

问题描述

我想创建3个分割的实例,并将它们分配给我也创建的新类(线程管理)。在threadManagement中,我将创建的实例保存在全局变量中。

std::vector<ThreadManagement*> threadManagementArray = {};

ProcessManagement::ProcessManagement() {    
    FirstComeFirstServedAlgorithm* f = new FirstComeFirstServedAlgorithm();
    ThreadManagement* management = new ThreadManagement(f);
    threadManagementArray.push_back(management);
    
    ShortestJobFirstAlgorithm* s = new ShortestJobFirstAlgorithm();
    ThreadManagement* management1 = new ThreadManagement(s);
    threadManagementArray.push_back(management1);
    
    RoundRobinAlgorithm* r = new RoundRobinAlgorithm();
    ThreadManagement* management2 = new ThreadManagement(r);
    threadManagementArray.push_back(management2);
}

AlgorithmBase* algo;

ThreadManagement::ThreadManagement(AlgorithmBase* algorithm) {
    algo = algorithm;
}

添加一个算法后,第二个优先于第一个,第三个优先于第二个。为什么C ++对此有问题,我该如何解决?我可以用C#或Java等其他语言来解决问题吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)