📄 dataitem.h
字号:
//CDataItem: 数据项类。表示一个多维的矢量数据
#pragma once
#include <vector>
using namespace std;
#define INVALID_CLASSID -1
class CDataItem
{
public:
CDataItem(void);
CDataItem(int nDimension, int nClassId=INVALID_CLASSID);
//CDataItem(CDataItem &item); //拷贝构造函数
~CDataItem(void);
protected:
//int m_nDimensions; //数据项的维数
int m_nClassId; //该项的分类
vector<double> m_Elements; //保存各维数据. vector是C++标准库的模板,相当于一个动态数组。
public:
void FromString(char *sDataLine); //从字符串加载数据(为了输入)
CString ToString(); //转换为字符串表示(为了输出)
double& GetAt(int nIndex);
double& operator [] (int nIndex); //重载[]操作符,用于存取m_Elements中的各项数据
void operator += (CDataItem& item);
void operator -= (CDataItem& item);
void operator /= (double d);
void operator *= (double d);
int& ClassID()
{ return m_nClassId; }
int Dimension()
{ return (int)m_Elements.size(); }
void SetDimension(int nDimension)
{ m_Elements.resize(nDimension); }
double DistanceFrom(CDataItem &anotherData);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -