reducts.h

来自「粗糙集应用软件」· C头文件 代码 · 共 79 行

H
79
字号
//-------------------------------------------------------------------
// Author........: Aleksander 豩rn
// Date..........: 960307
// Description...:
// Revisions.....:
//===================================================================

#ifndef __REDUCTS_H__
#define __REDUCTS_H__

#include <copyright.h>

#include <kernel/structures/structures.h>
#include <kernel/structures/reduct.h>

#include <kernel/basic/map.h>

//-------------------------------------------------------------------
// Class prototypes.
//===================================================================

class Discerner;

//-------------------------------------------------------------------
// Class.........: Reducts
// Author........: Aleksander 豩rn
// Date..........: 960307
// Description...: A set of reducts.
// Revisions.....:
//===================================================================

class Reducts : public Structures {
private:

	//- STL comparator.................................................
	struct Compare {
		bool operator()(const Handle<Structure> &a, const Handle<Structure> &b) const;
	};

protected:

  //- Constructors...................................................
  Reducts(const Reducts &in);

public:

	//- Type definitions...............................................
	typedef Map(int, Vector(int)) IVMap;

public:

  //- Constructors/destructor........................................
  Reducts();
  virtual ~Reducts();

  //- Methods inherited from Identifier..............................
	DECLAREIDMETHODS()

  //- Methods inherited from Structure...............................
  virtual Structure *Duplicate() const;
	virtual int        FindMember(const Structure *member, bool physical) const;

	//- Methods inherited from Structures..............................
	virtual bool       InsertStructure(Structure *structure, int i);

	//- New virtual methods............................................
	virtual int        GetNoReducts() const;
	virtual Reduct    *GetReduct(int i) const;
	virtual bool       Reindex(const Vector(int) &indices);
	virtual bool       Sort(int property, bool ascending);
	virtual bool       PostCreation(const DecisionTable &table, const Discerner &discerner, bool modulo);
	virtual bool       AppendReduct(Reduct *reduct, const DecisionTable &table, int object_no, bool masked, bool modulo, bool verify);

	//- Local methods..................................................
	bool               GetAttributeSupports(IVMap &attributes) const;

};

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?