Originally posted by: mido199
Hello,
I am using CPLEX 12.8 to solve a MIP, howver I am getting a segmentation fault when I try to set the name of one of my variables. When I run valgrind, I get: Use of uninitialised value of size 8 at line written in bold in the code below, I run again Valgrind with --track-origins=yes, I get Uninitialised value was created by a heap allocation. Do I need to initialize variables in CPLEX ? I really don't understand this error.
m = IloArray<IloArray<IloNumVarArray>>(env, (int)moves.size());
for(int l=0; l<moves.size(); l++)
{
printf("l: %d \n",l);
MoveConfig<Node,Driver,MoveAgv> mo = moves[l];
m[mo.config_index] = IloArray<IloNumVarArray>(env, mo.NbrOfNodes );
for(int i = mo.start_node_pos; i<mo.start_node_pos + mo.NbrOfNodes; i++)
{
Node * n = request_to_insert->GetNode(i);
m[mo.config_index][n->no] = IloNumVarArray(env, 1, 0, 1, ILOINT);
char name[40];
sprintf(name,"m%d_%d_%d",mo.config_index,n->no,mo.move.prev->no);
m[mo.config_index][n->no][mo.move.prev->no].setName(name);
}
}
#CPLEXOptimizers#DecisionOptimization