| 概述 | 组 | 树 | 图形 | 不推荐 | 索引 | 概念 |

通过该类,您可以定义整数谓词。 整数谓词是一个对象,它有一个方法(IlcIntPredicate::isTrue),用于检查有序整数集合是否满足某个属性。 在 CP 优化器中,整数的有序集合通常用 "IlcIntArray实例表示。
该类中的大多数成员函数都包含 "assert语句。 有关宏 "NDEBUG(打开或关闭这些 "assert语句的方法)的解释,请参阅Assert 和 NDEBUG 概念。
定义一类新的整数谓词
整数谓词和其他 CP 优化器对象一样,依赖于两个类:一个句柄类 "IlcIntPredicate和一个实现类 "IlcIntPredicateI,其中句柄类对象包含一个数据成员(句柄指针),该数据成员指向一个对象(其实现对象),即 CP 优化器堆上分配的 "IlcIntPredicateI实例。 作为 CP 优化器用户,您将主要使用手柄。
如果自行定义新的整数谓词类,则必须定义其实现类和相应的虚拟成员函数 "IlcIntPredicateI::isTrue,以及返回句柄类实例的成员函数 "IlcIntPredicate。
元数
作为开发人员,您可以在 CP Optimizer 应用程序中使用谓词来定义 CP Optimizer 中尚未预定义的约束条件。 在这种情况下,谓词的迭代数(即谓词中涉及的受约束变量的个数,也就是成员函数 "IlcIntPredicate::isTrue必须检查的数组的大小)必须小于或等于 3。
另请参阅:
IlcIntArray,ILCINTPREDICATE0,IlcIntPredicateI,IlcTableConstraint
| 方法概要 | |
|---|---|
public IlcIntPredicateI * | getImpl() const |
public | IlcIntPredicate(IlcIntPredicateI * impl=0) |
public IlcBool | isTrue(IlcIntArray val) |
| 方法详细信息 |
|---|
该构造函数通过指向实现对象的指针创建一个句柄对象。 如果实现对象为零,则必须在使用前初始化句柄。
该成员函数返回一个指向调用句柄的实现对象的指针。
This member function calls the member function isTrue of the implementation class IlcIntPredicateI.