2012-04-26 11 views
0

c++にアルゴリズムを書いていますが、マスターとサブの問題があります。だから、私はcplexソルバーを2回呼びます。最初に私はそれがマスターの問題を解決すると呼んでいます。それは私のコードです:cplexソルバーの呼び出し方法?

IloModel model_master(env); 

definition of obj and constraints 

IloCplex cplex_master(env); 
cplex_master.extract(model_master); 
cplex_master.setParam(IloCplex::EpGap,0.0001); 
cplex_master.solve(); 
LB=cplex_master.getObjValue(); 

しかし、それは動作しません! IloCplex cplex_master(env);の後にcout<<"1" << endl;と入力すると印刷されません。

+1

とcplex "<< endlの前にcout <<"を置くと、 IloCplex cplex_master(env)の直前。あなたはあれが見えますか?あなたはIloExceptionを取得していますか? –

+0

はい、私はそれを見ます。エラーは 'For-Calling-Cplex.exeの0x758cb9bcで未処理の例外:Microsoft C++例外:IloCplex :: Exception in memory location 0x0026fb6c..'です。 – Anna

答えて

1

try/catchブロックで関数呼び出しをラップします。

try { 
    // ... 
} catch (IloException &ex) { 
    cerr << ex << endl; 
} 

cplexを実行しようとしているマシンにIlmキーが設定されていない可能性があります。

関連する問題