来自类实例化的LNK2019 [英] LNK2019 from class instancing
本文介绍了来自类实例化的LNK2019的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
用于保存和传输数据Doc-> View的简单类.
同一个类在测试项目中可以正常工作,但不在需要的地方.
我想念什么?任何帮助表示赞赏.
LNK2019:函数"protected:CFracturedDoc :: CFracturedDoc(void)"中引用的未解析的外部符号"public:CSettings :: CSettings(void)"(缩写)
Simple class to hold and transfer data Doc->View.
Same class works fine in a test project but not where needed.
What am I missing? Any help appreciated.
LNK2019: unresolved external symbol "public: CSettings::CSettings(void)" referenced in function "protected: CFracturedDoc::CFracturedDoc(void)" (Abbreviated)
// Relevant CSettings.h File Code
#pragma once
#include "stdafx.h"
class CSettings
{
protected:
double m_nXMinimum;
double m_nXMaximum;
// More simple variables
public:
CSettings(void);
~CSettings(void);
// Gets and sets - No inline or virtual
};
// Relevant CSettings.cpp Code
#include "stdafx.h"
#include "CSettings.h"
CSettings::CSettings(void)
{
this->m_nXMinimum = -2.0;
this->m_nXMaximum = 2.0;
}
CSettings::~CSettings(void)
{
}
// Relevant CDoc.h Code
#pragma once
#include "CSettings.h"
class CFracturedDoc : public CDocument
{
protected: // Create From Serialization Only
CFracturedDoc();
DECLARE_DYNCREATE(CFracturedDoc)
CSettings* m_cSettings; // No Grief here
public:
CSettings* GetSettings(void);
};
// Relevant CDoc.cpp problem causing Code
#include "stdafx.h"
#include "CSettings.h" // Error with or without include
#include "CFracturedDoc.h"
CFracturedDoc::CFracturedDoc()
{
m_cSettings = new CSettings(); // Unresolved External Reference Grief
}
推荐答案
在Visual Studio中,您必须在解决方案中包括头文件和源(* cpp)文件.
您必须使用CSettings.h和CSettings.cpp将现有项目添加到项目/解决方案...".
in Visual Studio you must include the header and source (*cpp) files in the solution.
You must "Add existing item to project/solution..." with CSettings.h and CSettings.cpp.
这篇关于来自类实例化的LNK2019的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文