CMap的设置

class CModelManager : public CObject
{
public:
	static CModelManager& GetInstance();	
	void AddModelInfo(CString,CModelInfo&);	
	CModelInfo* GetModelInfo(CString mInfoID);
protected:
	virtual ~CModelManager();
	/// <summary> 静态变量,唯一地持有模型管理器对象</summary>
	static CModelManager m_instance;
private:
	CModelManager();
	/// <summary> 保存所有的模型 </summary>
	CArray<CModelItem,CModelItem&> m_modelItems;
	/// <summary> 保存所有的模型信息. </summary>
	CMap<CString ,CString ,CModelInfo ,CModelInfo& > m_modelInfosMap;
	
};

如果像这里写的话,就会出错提示错误如前一篇文章所示。在给CModelInfo重载了public的operator=函数后,系统提示如下错误

无法从“ATL::CStringT<BaseType,StringTraits>”转换为“long”
在参考其他示例代码后,将CMap第二个参数改成LPCTSTR,终于解决问题。

你可能感兴趣的:(CMap的设置)