<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. C語言

    c++ minicsv庫的編譯錯誤與解決方案

    時間:2025-05-05 22:41:37 C語言 我要投稿
    • 相關推薦

    c++ minicsv庫的編譯錯誤與解決方案

      C++擅長面向對象程序設計的同時,還可以進行基于過程的程序設計,因而C++就適應的問題規模而論,大小由之。下文是為大家精選的c++ minicsv庫的編譯錯誤與解決方案,歡迎大家閱讀參考。

    c++ minicsv庫的編譯錯誤與解決方案


      有一個項目需要寫csv文件以呈現數據。Github上有一個關于csv的輕量級讀寫庫minicsv,于是下載之。但是編譯example時出現了以下問題:

      In file included from example.cpp:1:0:

      minicsv.hpp: In function 'csv::ofstream& operator<<(csv::ofstream&, const T&)':

      minicsv.hpp:326:38: error: no matching function for call to 'csv::ofstream::escape_and_output(std::basic_ostringstream<char>::__string_type)'

      ostm.escape_and_output(os_temp.str());

      ^

      minicsv.hpp:326:38: note: candidate is:

      minicsv.hpp:266:8: note: void csv::ofstream::escape_and_output(std::string&)

      void escape_and_output(std::string & src)

      ...

      錯誤很多,不再貼出,占用篇幅。這些錯誤都來自于同一個函數頭。這個函數頭是這樣定義的:

      void escape_and_output(std::string & src)

      而調用時是這個樣子:

      ostm.escape_and_output(os_temp.str());

      很明顯,調用時的函數頭所要求的是右值引用,而真正的函數頭給出的左值引用,兩者不符,于是編譯器報錯。修改很簡單,“&”改為“&”即可,即把函數頭改成這個樣子:

      void escape_and_output(std::string & src)


    【c++ minicsv庫的編譯錯誤與解決方案】相關文章:

    C/C++編譯器錯誤消息大全09-01

    Windows更新錯誤解決方案06-25

    正確理解PHP程序編譯時的錯誤信息11-12

    C語言條件編譯07-22

    C語言的編碼編譯08-11

    怎么在C語言中調用C++做的動態鏈接庫07-15

    如何在C語言中調用C++做的動態鏈接庫08-15

    c語言編譯預處理10-15

    java編譯計算器08-11

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人