C 常見問題

2021-08-15 07:01:39 字數 843 閱讀 4504

問題描述

解決方式

無法解析的外部符號 「public: __cdecl minidl::operator::operator(void)」 (??0operator@minidl@@qeaa@xz),該符號在函式 「public: __cdecl minidl::denseop::denseop(void)」 (??0denseop@minidl@@qeaa@xz) 中被引用 deeplearning e:\workspace\deeplearning\deeplearning\denseop.obj 1

因為opertor為c++介面,不應該有建構函式;或者是因為c++介面中虛函式的定義方式有誤(虛函式定義的時候最後函式體要等於乙個數,最好是0)

c++中const在函式名前面和函式後面的區別

當const在函式名前面的時候修飾的是函式返回值,在函式名後面表示是常成員函式,該函式不能修改物件內的任何成員,只能發生讀操作,不能發生寫操作。

不能例項化抽象類

只需要將介面中定義的虛函式例項化了就行。但是我在介面中的虛函式名與子類中對應函式名不一致,導致出現了這種型別的錯誤

嚴重性 ** 說明 專案 檔案 行 禁止顯示狀態 錯誤 lnk2019 無法解析的外部符號 「void __cdecl minidl_test::test_mathfunctions(void)」 (?test_mathfunctions@minidl_test@@yaxxz),該符號在函式 main 中被引用 deeplearning e:\workspace\deeplearning\deeplearning\main.obj 1

在標頭檔案以及原始檔中使用了命名空間。然而在寫的時候只在原始檔或標頭檔案中寫了namespace,在另乙個檔案中沒有寫

C 常見問題

1.預處理 預處理的主要作用就是對資源進行等價替換,最常見的預處理有 檔案包含 include 條件編譯 if,ifndef,ifdef,endif,undef 布局控制 pragma 巨集替換等 define 等。1.1 標頭檔案中放什麼?標頭檔案一般用於類的定義 extern變數和函式的宣告。由...

c 常見問題

編譯器總是根據型別來呼叫類成員函式。但是乙個派生類的指標可以安全地轉化為乙個基類的指標。這樣刪除乙個基類的指標的時候,c 不管這個指標指向乙個基類物件還是乙個派生類的對 象,調刪除線格式用的都是基類的析構函式而不是派生類的。如果你依賴於派生類的析構函式的 來釋放資源,而沒有過載析構函式,那麼會有資源...

C 常見問題

1.reinterpret cast,static cast,dynamic cast const cast區別 2.類的大小 class ctest1 int size sizeof ctest1 1class ctest2 static void func2 protected static i...