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

📄 swprodct.cpp

📁 API经典入门
💻 CPP
字号:
// Filename: SWProdct.cpp
//
// class implementation of CSWProduct

#include "stdafx.h"
#include "SWProdct.h"

IMPLEMENT_SERIAL(CSWProduct, CObject, 0)

// default constructor
CSWProduct::CSWProduct()
{
	CObject::CObject();
	
	m_fPurchasePrice = 0.0;
	m_wRating = 5;
	m_nJoystick = JNot_Used;
	m_bWinCompatible = TRUE;
}

// destructor
CSWProduct::~CSWProduct()
{
	// empty strings
	m_strTitle.Empty();
	m_strPublisher.Empty();
	m_strRegistration.Empty();
	m_strPhone.Empty();
	m_strPurchaseDate.Empty();
	m_strResolution.Empty();
	m_strCategory.Empty();
	   
   	// empty string list
   	m_lstMedia.RemoveAll();
}

// Serialization
void CSWProduct::Serialize( CArchive& ar )
{
	CObject::Serialize(ar);
	m_lstMedia.Serialize(ar);
	
	WORD wCompatible = m_bWinCompatible;
	WORD wJS = m_nJoystick;
	
	if (ar.IsStoring())
	{
		ar << m_strTitle << m_strPublisher 
		   << m_strRegistration << m_strPhone
		   << m_strPurchaseDate << m_fPurchasePrice
		   << m_strResolution << m_strCategory 
		   << m_wRating << wJS << wCompatible;
	}
	else
	{
		ar >> m_strTitle >> m_strPublisher 
		   >> m_strRegistration >> m_strPhone
		   >> m_strPurchaseDate >> m_fPurchasePrice
		   >> m_strResolution >> m_strCategory 
		   >> m_wRating >> wJS >> wCompatible;
		m_bWinCompatible = wCompatible;
		m_nJoystick = (JS_Support)wJS;
	}
	
}

#ifdef _DEBUG
// Diagnostics

void CSWProduct::Dump(CDumpContext& dc) const
{
	dc.SetDepth(1); 
	// allows collections to dump the individual collection elements
	
	dc << "Title: " << m_strTitle
	   << " Publisher: " << m_strPublisher
	   << "\nReg #: " << m_strRegistration
	   << " Phone: " << m_strPhone
	   << "\nPurchase Date: " << m_strPurchaseDate
	   << " Purchase Price: " << m_fPurchasePrice
	   << " Resolution: " << m_strResolution
	   << "\nCategory: " << m_strCategory
	   << " Rating: " << m_wRating
	   << "\nJoystick Support: ";
	   
	switch (m_nJoystick)
	{
		case JRequired:
		dc << "*Required*";
		break;
		
		case JSupported:
		dc << "*Supported*";
		break;
		
		case JNot_Used:
		dc << "*Not Used*";
		break;
	}

	dc << " Win Compatible: ";

	if (m_bWinCompatible)
		dc << "*TRUE*";
	else
		dc << "*FALSE*";

	dc << "Media selections:\n";
	m_lstMedia.Dump(dc);

	dc << "\n\n";	
}

#endif

⌨️ 快捷键说明

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