VS error 2019 錯誤


背景:

C++ peimer 第七章第二小節的代碼

如果在同一個文件中編譯沒問題,但是如果分發到 .hpp 和 .cpp 兩個文件中,就會出現 error 2019 的錯誤

把內聯的幾個 inline 去掉后,就可以編譯編譯成功。此處是問題一,這個內聯定義影響到了C++編譯期鏈接中間函數名,這個是為什么

 

第二個是在測試

    Screen myScreen(5,3);
    const Screen blank(5, 3);
    myScreen.set('#').display(cout);
    blank.display(cout);

時,會出現沒有對應的構造函數與之進行匹配。

我在類中又加了一個兩個參數的構造函數才得以通過

 

    Screen(pos ht, pos wd)
    {
        height = ht;
        width = wd;
    }

 

    Screen &set(char);
    inline Screen &set(pos, pos, char);

以上兩個函數中

如果對於第一個函數進行內聯修飾,會報錯

只能對於第二個函數進行內聯函數聲明


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM