我正在尝试使用bool向量来执行所有操作,但是我收到编译器错误:
vector<bool> particles_crossed_send(world.size(),false);
vector<bool> particles_crossed_recv;
mpi::all_to_all(world,particles_crossed_send,particles_crossed_recv);
编译器抱怨最后两个参数(向量)“必须是左值或函数指示符。”
不知道为什么我会遇到这个问题。
答案 0 :(得分:0)
我认为它与boost :: mpi中的底层调用有关。由于boost mpi使用较旧版本的MPI标准,因此bool不被视为MPI数据类型。我只是为了我的目的把它换成了一个字符,它工作得很好。