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

📄 dataclass.cpp

📁 这是一个学生信息管理系统
💻 CPP
📖 第 1 页 / 共 2 页
字号:
#include "StdAfx.h"
#include "DataClass.h"
#include "SMS.h"
CDataClass::CDataClass(void)
{
	m_Data=NULL;
}

CDataClass::~CDataClass(void)
{
	delete [] m_Data;
}
void CDataClass::Init(int nAmount) 
{
	m_iAmount=nAmount;
	m_Data=new tagData [m_iAmount];
}
//排序函数
void CDataClass::SortDataByCol_1(bool Up, int kind) 
{
	int i,j;
	if(Up)//升序排序
	{
		for(i=0;i<m_iAmount-1;i++)
			for(j=i+1;j<m_iAmount;j++)
			{
				switch(kind)
				{
				case 0://默认是对CString排序
					if(m_Data[i].m_sCol_1 >m_Data[j].m_sCol_1 )
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 1://日期的
					if(_StringToString(m_Data[i].m_sCol_1) >_StringToString(m_Data[j].m_sCol_1 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 2://货币的
					if(MoneyToInt(m_Data[i].m_sCol_1) >MoneyToInt(m_Data[j].m_sCol_1 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				default:break;
				}
			}
	}
	else
	{
		for(i=0;i<m_iAmount-1;i++)
			for(j=i+1;j<m_iAmount;j++)
			{
				switch(kind)
				{
				case 0://默认是对CString排序
					if(m_Data[i].m_sCol_1 <=m_Data[j].m_sCol_1 )
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 1://日期的
					if(_StringToString(m_Data[i].m_sCol_1) <=_StringToString(m_Data[j].m_sCol_1 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 2://货币的
					if(MoneyToInt(m_Data[i].m_sCol_1) <=MoneyToInt(m_Data[j].m_sCol_1 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				default:break;
				}
			}
	}
	
}
/////////////////////////////////////////////////////////////////////////////////////////
void CDataClass::SortDataByCol_2(bool Up, int kind) 
{
	int i,j;
	if(Up)//升序排序
	{
		for(i=0;i<m_iAmount-1;i++)
			for(j=i+1;j<m_iAmount;j++)
			{
				switch(kind)
				{
				case 0://默认是对CString排序
					if(m_Data[i].m_sCol_2 >m_Data[j].m_sCol_2 )
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 1://日期的
					if(_StringToString(m_Data[i].m_sCol_2) >_StringToString(m_Data[j].m_sCol_2 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 2://货币的
					if(MoneyToInt(m_Data[i].m_sCol_2) >MoneyToInt(m_Data[j].m_sCol_2 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				default:break;
				}
			}
	}
	else
	{
		for(i=0;i<m_iAmount-1;i++)
			for(j=i+1;j<m_iAmount;j++)
			{
				switch(kind)
				{
				case 0://默认是对CString排序
					if(m_Data[i].m_sCol_2 <=m_Data[j].m_sCol_2 )
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 1://日期的
					if(_StringToString(m_Data[i].m_sCol_2) <=_StringToString(m_Data[j].m_sCol_2 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 2://货币的
					if(MoneyToInt(m_Data[i].m_sCol_2) <=MoneyToInt(m_Data[j].m_sCol_2 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				default:break;
				}
			}
	}
	
}
///////////////////////////////////////////////////////////////////////
void CDataClass::SortDataByCol_3(bool Up, int kind) 
{
	int i,j;
	if(Up)//升序排序
	{
		for(i=0;i<m_iAmount-1;i++)
			for(j=i+1;j<m_iAmount;j++)
			{
				switch(kind)
				{
				case 0://默认是对CString排序
					if(m_Data[i].m_sCol_3 >m_Data[j].m_sCol_3 )
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 1://日期的
					if(_StringToString(m_Data[i].m_sCol_3) >_StringToString(m_Data[j].m_sCol_3 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 2://货币的
					if(MoneyToInt(m_Data[i].m_sCol_3) >MoneyToInt(m_Data[j].m_sCol_3 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				default:break;
				}
			}
	}
	else
	{
		for(i=0;i<m_iAmount-1;i++)
			for(j=i+1;j<m_iAmount;j++)
			{
				switch(kind)
				{
				case 0://默认是对CString排序
					if(m_Data[i].m_sCol_3 <=m_Data[j].m_sCol_3 )
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 1://日期的
					if(_StringToString(m_Data[i].m_sCol_3) <=_StringToString(m_Data[j].m_sCol_3 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 2://货币的
					if(MoneyToInt(m_Data[i].m_sCol_3) <=MoneyToInt(m_Data[j].m_sCol_3 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				default:break;
				}
			}
	}
	
}
////////////////////////////////////////////////////////////////////////////
void CDataClass::SortDataByCol_4(bool Up, int kind) 
{
	int i,j;
	if(Up)//升序排序
	{
		for(i=0;i<m_iAmount-1;i++)
			for(j=i+1;j<m_iAmount;j++)
			{
				switch(kind)
				{
				case 0://默认是对CString排序
					if(m_Data[i].m_sCol_4 >m_Data[j].m_sCol_4 )
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 1://日期的
					if(_StringToString(m_Data[i].m_sCol_4) >_StringToString(m_Data[j].m_sCol_4 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 2://货币的
					if(MoneyToInt(m_Data[i].m_sCol_4) >MoneyToInt(m_Data[j].m_sCol_4 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				default:break;
				}
			}
	}
	else
	{
		for(i=0;i<m_iAmount-1;i++)
			for(j=i+1;j<m_iAmount;j++)
			{
				switch(kind)
				{
				case 0://默认是对CString排序
					if(m_Data[i].m_sCol_4 <=m_Data[j].m_sCol_4 )
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 1://日期的
					if(_StringToString(m_Data[i].m_sCol_4) <=_StringToString(m_Data[j].m_sCol_4 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 2://货币的
					if(MoneyToInt(m_Data[i].m_sCol_4) <=MoneyToInt(m_Data[j].m_sCol_4 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				default:break;
				}
			}
	}
	
}
/////////////////////////////////////////////////////////////////////////////////
void CDataClass::SortDataByCol_5(bool Up, int kind) 
{
	int i,j;
	if(Up)//升序排序
	{
		for(i=0;i<m_iAmount-1;i++)
			for(j=i+1;j<m_iAmount;j++)
			{
				switch(kind)
				{
				case 0://默认是对CString排序
					if(m_Data[i].m_sCol_5 >m_Data[j].m_sCol_5 )
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 1://日期的
					if(_StringToString(m_Data[i].m_sCol_5) >_StringToString(m_Data[j].m_sCol_5 ))
					{
						tagData temp;
						temp=m_Data[i];
						m_Data[i]=m_Data[j];
						m_Data[j]=temp;
					}
					break;
				case 2://货币的
					if(MoneyToInt(m_Data[i].m_sCol_5) >MoneyToInt(m_Data[j].m_sCol_5 ))
					{
						tagData temp;

⌨️ 快捷键说明

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