⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 swatchdata.h

📁 VC开发环境下
💻 H
字号:
#pragma once

#include <vector>

template<class T>
class CSwatchDataT
{
public:
	CSwatchDataT()
	{

	}

	CSwatchDataT(LONG lSize):m_vecData(lSize)
	{
		//m_vecData.resize(lSize);
	}

	CSwatchDataT(const CSwatchDataT& swatchData)
	{
		set_Count(swatchData.get_Count());
		
		for (LONG i=0;i<get_Count();i++)
			m_vecData[i]=swatchData.get_Value(i);
	}

	~CSwatchDataT(void)
	{
	}

	CSwatchDataT& operator=(const CSwatchDataT& swatchData)
	{
		if (this==&swatchData)
			return *this;
		
		if (swatchData.get_Count()!=get_Count()) 
			return *this;

		for (LONG i=0;i<get_Count();i++)
			m_vecData[i]=swatchData.get_Value(i);
	}

public:
	T get_Value(LONG lIndex) const
	{
		ATLASSERT(lIndex>=0&&lIndex<get_Count());
		return m_vecData[lIndex];
	}

	void  set_Value(LONG lIndex,T newVal)
	{
		ATLASSERT(lIndex>=0&&lIndex<get_Count());
		m_vecData[lIndex]=newVal;
	}

	LONG  get_Count() const
	{
		return (LONG) m_vecData.size();
	}
	
	void set_Count(LONG lSize)
	{
		m_vecData.resize(lSize);
	}

private:
	std::vector< T > m_vecData;
};

typedef CSwatchDataT<FLOAT> CSwatchData;

⌨️ 快捷键说明

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