我正在编写实现多级反馈队列调度程序的代码。部分代码中有一些不清楚的地方:
void Scheduler_MFQS :: fill_queue(int clk) {
list<Process>::iterator itr;
for(itr = processes.begin(); itr != processes.end(); itr++) {
if((itr -> has_arrived(clk)) && (!queues[0].contains(*itr))) {
Process tmp (*itr);
queues[0].add_process(tmp);
remove(processes.begin(), processes.end(), *itr);
}
}
}
这基本上所做的只是在某些条件下将进程放入基本队列中。但是不知道是什么Process tmp (*itr);
意思?但是,它是合法编译的。这是否意味着创建一个名为 tmp 的 Process 对象?但是下一个迭代器(*itr)
在 C++ 中的含义是什么?