Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/152.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CPLEX调试窗口冻结 我尝试用C++(ChandieTechnology)对CPLEX语言编写数学模型。当我在编译器窗口中运行代码时,读取输入并冻结。当尝试调试我的代码时,VisualStudio将以下行显示为断点 //constraint 2 for (cc = 0; cc < NumberOfCourses; cc++) { IloExpr Constraint2(env); for (rr = 0; rr < AvailableRooms; rr++) { Constraint2 += RoomCapacity[rr] * Y[cc][rr]; mod.add(Constraint2 >= Students[cc]); // this line Constraint2.end(); } } //约束2 对于(cc=0;cc_C++_Cplex - Fatal编程技术网

CPLEX调试窗口冻结 我尝试用C++(ChandieTechnology)对CPLEX语言编写数学模型。当我在编译器窗口中运行代码时,读取输入并冻结。当尝试调试我的代码时,VisualStudio将以下行显示为断点 //constraint 2 for (cc = 0; cc < NumberOfCourses; cc++) { IloExpr Constraint2(env); for (rr = 0; rr < AvailableRooms; rr++) { Constraint2 += RoomCapacity[rr] * Y[cc][rr]; mod.add(Constraint2 >= Students[cc]); // this line Constraint2.end(); } } //约束2 对于(cc=0;cc

CPLEX调试窗口冻结 我尝试用C++(ChandieTechnology)对CPLEX语言编写数学模型。当我在编译器窗口中运行代码时,读取输入并冻结。当尝试调试我的代码时,VisualStudio将以下行显示为断点 //constraint 2 for (cc = 0; cc < NumberOfCourses; cc++) { IloExpr Constraint2(env); for (rr = 0; rr < AvailableRooms; rr++) { Constraint2 += RoomCapacity[rr] * Y[cc][rr]; mod.add(Constraint2 >= Students[cc]); // this line Constraint2.end(); } } //约束2 对于(cc=0;cc,c++,cplex,C++,Cplex,我已经设置了如下参数和变量: double RoomCapacity[AvailableRooms]; double Students[NumberOfCourses]; //Ycr IloBoolVarArray2 Y(env, NumberOfCourses); for (cc = 0; cc < NumberOfCourses; cc++) Y[cc] = IloBoolVarArray(env, AvailableRooms); 双房间容量[AvailableRooms

我已经设置了如下参数和变量:

double RoomCapacity[AvailableRooms];
double Students[NumberOfCourses];

//Ycr
IloBoolVarArray2 Y(env, NumberOfCourses);
for (cc = 0; cc < NumberOfCourses; cc++)
    Y[cc] = IloBoolVarArray(env, AvailableRooms);
双房间容量[AvailableRooms];
学生人数[课程数];
//Ycr
IloBoolVarArray2 Y(环境,课程数);
对于(cc=0;cc

我不明白我的约束有什么问题

您的代码是错误的:在第一次内部迭代中,您将
Constraint2
添加到模型中,然后您将
end()
该变量。因此,在第二次内部迭代中,您正在执行
Constraint2+=…
,而
Constraint2
对象已被删除。这将导致未定义的行为(挂起、崩溃等)

我想你想写的是(从内部循环中拉出
add()
end()
):

for(cc=0;cc=学生[cc]);
约束2.end();
}

您能否在每次迭代后打印
rr
cc
值?或者它发生在第一次迭代中?我认为它没有经过迭代。当它冻结时,您可以包括堆栈跟踪吗?顺便说一句,这个CPLEX库在调试中吗?我想我对术语没有那么专业。堆栈跟踪是什么意思?我不明白你的第二个问题。我在代码开始时创建了一个cplex环境。
   for (cc = 0; cc < NumberOfCourses; cc++) {
      IloExpr Constraint2(env);
      for (rr = 0; rr < AvailableRooms; rr++) {
         Constraint2 += RoomCapacity[rr] * Y[cc][rr];
      }
      mod.add(Constraint2 >= Students[cc]);
      Constraint2.end();
   }