【发布时间】:2016-04-23 16:55:04
【问题描述】:
您好 StackOverFlow 研究员,
我正在通过 Concert Technology 库使用 CPLEX 在 C++ 中求解 MILP 模型,该库将变量和参数数组分别编码为 IloVarArray 和 IloArray 对象。我已经阅读了很多关于如何在调试器模式下访问 Visual Studio 上的普通数组的问题。
但是,如果您想访问存储在IloIntArray array 的i-th 位置上的值,则在立即窗口 上查询array,i-1 并不是很有用,因为您会得到一个信息丰富的消息:
IloArray<__int64>: {_impl=0x0000028c514ad968 {_max=4 _sizeof=8 _size=3 ...} }
如您所见,其中包含一条有用的信息,即数组大小,例如array 在其第一个维度上包含三个元素,因为它可能包含多个元素。如果尝试索引超出数组边界,它甚至不会提示错误!
但是除非包含大量 cout 指令,可能还有一堆 for 循环,以及重建项目一百万次,否则您无法访问数组中的值,这非常即使在中等大小的模型中也很耗时。
那么,我们真的可以在调试器上轻松访问IloArray 元素吗?还是cout 是我唯一可用的选项?
【问题讨论】:
标签: c++ visual-studio c++builder cplex