1. 程式人生 > >VS2015無法解析外部符號

VS2015無法解析外部符號

在使用VS編輯C++時,遇到了無法解析外部符號的錯誤

嚴重性程式碼說明專案 檔案行
錯誤LNK2019 無法解析的外部符號 "public: __thiscall Employee::Employee(void)" ([email protected]@[email protected]),該符號在函式 "public: __thiscall manager::manager(int,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (

[email protected]@[email protected][email protected][email protected]@[email protected]@[email protected]@[email protected]@[email protected]@@Z) 中被引用Process_fourF:\C++\Process_four\Process_four\Process_four.obj1

嚴重性程式碼說明專案 檔案行
錯誤LNK2019 無法解析的外部符號 "public: __thiscall Employee::~Employee(void)" (

[email protected]@[email protected]),該符號在函式 [email protected]@[email protected][email protected][email protected]@[email protected]@[email protected]@[email protected]@[email protected]@@Z$1 中被引用Process_fourF:\C++\Process_four\Process_four\Process_four.obj1

後來發現是虛擬函式寫的有問題

錯版:

class Employee
{
protected:
int No;
string name;
float salary;
static int totalNo;     // 自動計算員工編號
public:
Employee()
{
++Employee::totalNo;
}//自動計算員工編號,姓名從鍵盤輸入,工資初值為0
~Employee()
{
--Employee::totalNo;
}
virtual void pay();        //計算月薪
virtual void display();      //顯示人員資訊
};
正確:
class Employee
{
protected:
	int No;
	string name;
	float salary;
	static int totalNo;     // 自動計算員工編號
public:
	Employee()
	{
		++Employee::totalNo;
	}//自動計算員工編號,姓名從鍵盤輸入,工資初值為0
	~Employee()
	{
		--Employee::totalNo;
	}
	virtual void pay() = 0;        //計算月薪
	virtual void display() = 0;      //顯示人員資訊
};
class Employee
{
protected:
	int No;
	string name;
	float salary;
	static int totalNo;     // 自動計算員工編號
public:
	Employee()
	{
		++Employee::totalNo;
	}//自動計算員工編號,姓名從鍵盤輸入,工資初值為0
	~Employee()
	{
		--Employee::totalNo;
	}
	virtual void pay(){}//計算月薪
	virtual void display(){}//顯示人員資訊
};
問題在於自己沒有分清虛擬函式和純虛擬函式的使用方法。


相關推薦

VS2015無法解析外部符號

在使用VS編輯C++時,遇到了無法解析外部符號的錯誤 嚴重性程式碼說明專案 檔案行 錯誤LNK2019 無法解析的外部符號 "public: __thiscall Employee::Employe

c++連接mysql數據庫出現無法解析外部符號的問題

vs、解析外部符號include,lib文件夾都已經拷到了項目根目錄,並且設置好了路徑,生成就會出現無法解析的外部符號,提示我無法轉到函數的定義,最後發現vs2017默認win32,但是我的程序集64位的。更改後,重新設置目錄,路徑即可。c++連接mysql數據庫出現無法解析外部符號的問題

error2019無法解析外部符號

“error LNK2019: 無法解析的外部符號 error LNK2001: 無法解析的外部符號“private: static struct _OVERLAPPED CUsbCom::g_WriteOverlapped” 應該是工程設定的問題 沒有連線相應

OpenCv在win下靜態庫的編譯和使用,以及部分無法解析外部符號的錯誤解決

這裡演示的是opencv3.4版本的編譯和使用過程。1、靜態庫編譯CMake進行配置,編譯時我選擇build目錄為build-static。其中需要設定選擇安裝目錄,設定   “CMAKE_INSTALL_PREFIX”  為   /build-static/install 

VS2015 無法解析外部符號 __vsnwprintf_s

IDE:Visual Studio 2015 作業系統:win 10 問題: 編譯的時候可能會遇到 ERROR LNK2019:無法解析的外部的符號 __vsnwprintf_s,或者是_sscanf,_sscanf_s等等一系列形如這樣的函式 疑問: 這些函式明明就是

vs2015無法解析外部符號 __imp___vsnprintf

解決:無法解析的外部符號 __imp___vsnprintf 在 vs2015 工程選項,連結器附加依賴項裡面新增 legacy_stdio_definitions.lib 即可。 出現這個問題的原

VC++編譯lua庫 無法解析lua符號問題

dsm div number blog reg gist html name dpa VC編譯lua庫 出現錯誤: 錯誤 36 error LNK1120: 21 個無法解析的外部命令 C:\Users\luozhuang\Desktop\onscripter

vs2015開啟vs2010時提示無法解析外部符號 __imp___vsnprintf

http://bbs.csdn.NET/topics/391834105?page=1 解決方案找到了。 在vs2015工程選項,連結器附加依賴項裡面新增legacy_stdio_definitions.lib即可。 出現這個問題的原因是vs2015預設編譯時將許多標準庫採用內聯

VS2015 error LNK2019 無法解析外部符號 [email protecte

前言 上一篇文章中,為了編譯OpenCV的示例程式碼,然後搭建環境, 最後想直接執行示例demo,我在建立新工程的時候,直接建立了一個win32視窗專案,然後環境配置完成後,將opencv 的示例程式碼kalman.cpp直接匯入到新建的vs工程中進行編譯,直接報錯: 錯誤 LN

VS2015下解決:error LNK2019: 無法解析外部符號 __iob_func

在使用VS2015下使用libjpeg-turbo靜態庫,編譯時報錯了: error LNK2019: 無法解析的外部符號 __iob_func,該符號在函式 output_message 中被引用 根據關鍵字在網上找到一些文章描述了類似的錯誤,大都

VS2015下解決:無法解析外部符號 __imp___vsnprintf 及__iob_func

1、解決:無法解析的外部符號 __imp___vsnprintf 在 vs2015 工程選項,連結器附加依賴項裡面新增 legacy_stdio_definitions.lib 即可。

error LNK2019: 無法解析外部符號;fatal error LNK1120: 1 個無法解析外部命令; 可能存在的問題

alt 配置 pan ron ima detail deb 16px 管理 一、問題:使用一個.lib出現如下錯誤 (我使用的環境 vs2012)   error LNK2019: 無法解析的外部符號 _SSL_CTX_new,該符號在函數 _main 中被引用;   fa

Qt creator 編譯錯誤:無法解析外部符號(命令)

log void virtual win idg track deb dia popu 問題來自於:僅僅是在creator 中加入了一個新的DIalog類,並在main(),中實例化並show。就出現例如以下的錯誤: main.obj:-1: error: L

FFmpeg視頻編解碼庫,無法解析外部符號、找不到inttypes.h文件的問題

detail program targe image types lib 包含 mage 程序 ffmpeg報錯,link2019,無法解析的外部符號。 以下嘗試: 在檢查 包含目錄、庫目錄、鏈接器輸入和系統環境變量 均設置無誤的情況下,包含的文件要寫成以下形式: ex

錯誤 1 error LNK2019: 無法解析外部符號 "public: __thiscall Distance::Distance(int)" (??0Distance@@QAE@H@Z),該符號在函數 _main 中被引用

his 無法 析構函數 this distance AI sta 語法 解析 錯誤: 錯誤 1 error LNK2019: 無法解析的外部符號 "public: __thiscall Distance::Distance(int)" (??0Distance@@QAE@

【VS開發】Visual Studio 2015 無法解析外部符號 __vsnwprintf_s

IDE:Visual Studio 2015 作業系統:win 10   問題: 編譯的時候可能會遇到 ERROR LNK2019:無法解析的外部的符號 __vsnwprintf_s,或者是_sscanf,_sscanf_s等等一系列形如這樣的函式   疑

Qt error: LNK2019: 無法解析外部符號 解決

按照以下幾個步驟依次執行: 1、確認導包是否正確,尤其自定義的檔案; 2、構建-->清理專案,然後執行 qmake; 3、是否有槽函式宣告,卻沒有實現或刪除; 4、自定義類時,建構函式或者解構函式沒有實現; 特別一點的 5、是否需要修改pro檔案。例如: 使用QPr

【C++】error LNK2019: 無法解析外部符號

轉:C++ error LNK2019: 無法解析的外部符號 錯誤解決方案 今天在實現類模板特例化的時候遇到一個問題,就是把類模板函式實現放到類的cpp檔案中,然後在main函式中使用這個類的時候,就會出現無法解析的外部符號:函式名(xxxx)等錯誤,那麼出現這個錯誤的原因是什麼呢? 原

無法解析外部符號 _main,該符號在函式 ___tmainCRTStartup 中被引用

1、warning C4819: 該檔案包含不能在當前內碼表(936)中表示的字元。請將該檔案儲存為 Unicode 格式以防止資料丟失       解決: http://blog.csdn.net/lcb_coconut/article/details/7