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++0x不熟悉的人会不知所措,故贴之。还有我不知道为何项目中会留下这么个显而易见的错误——或许那个老大的编译器太智能了吧。
相关推荐
-
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 fun
-
Qt图形图像开发之曲线图表库QtChart编译安装详细方法与使用实例
Qt曲线图表库QtChart简介 Qt的线性绘图控件有大名鼎鼎的Qwt,ChartDirector,小巧玲珑的QCustomPlot,当然还有自家的QtChart.长久以来QtChart在Qt家族里一直是收费的模块,只有商业版才可以使用,但Qt5.7之后将开放其权限,可参见:Qt 5.7 亮瞎眼的更新.下面将介绍如何安装QtChart并进行简单的绘图. Qt曲线图表库QtChart下载 这里用git下载QtChart,参考Qt Charts 5.7.0 安装教程 Git地址:https://gi
-
解决Android 源码编译错误的问题
如下所示: Building with Jack: out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/with-local/classes.dex FAILED: /bin/bash out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/with-local/classes.dex.rsp Out of memory error (version 1.2-a
-
Qt图形图像开发之曲线图表库QChart编译安装详细方法与使用实例
Qt曲线图表库Qt Chart简介 Qt的线性绘图控件有大名鼎鼎的Qwt,ChartDirector,小巧玲珑的QCustomPlot,当然还有自家的QtChart.长久以来QtChart在Qt家族里一直是收费的模块,只有商业版才可以使用,但Qt5.7之后将开放其权限,可参见:Qt 5.7 亮瞎眼的更新.下面将介绍如何安装QtChart并进行简单的绘图. Qt曲线图表库Qt Chart下载 这里用git下载QtChart,参考Qt Charts 5.7.0 安装教程 Git地址:https://
-
Android Studio升级4.1.1后各种错误和解决方案
1,CMake Error: CMake was unable to find a build program corresponding to "Ninja". 因为项目中使用到Cmake编译的C/C++代码,升级了Android Studio后编译出现CMake Error: CMake was unable to find a build program corresponding to "Ninja".CMAKE_MAKE_PROGRAM is not se
-
基于C#的图表控件库 ScottPlot编译visual studio 2022
目录 前言 C# 使用 ScottPlot 库 编译 ScottPlot 库 编译 运行 运行例程 小结 前言 基于 C# 的 图表控件库 ScottPlot,开源免费,可以用于开发一些上位机软件,如电压.电流波形的显示,开发[示波器]图形界面,可以显示一些图表.波形,总之功能比较的强大 ScottPlot 库的官方地址:https://github.com/ScottPlot/ScottPlot.git,里面提供了库相关的源代码,还有一些demo例程的源代码 C# 使用 ScottPlot 库
-
关于使用rust调用c++静态库并编译nodejs包的问题
目录 一.创建项目 二.Cargo.toml 三.package.json 四.代码分析 在项目上经常要用到身份证阅读器.护照阅读仪.指纹仪等各种品牌硬件,假如每套系统的都做集成开发那代码的维护成本将变得很高,为此采用rust来调用厂家提供的sdk c++开发包并封装成nodejs包,用fastify来开发成web api独立的服务形式.这样我们开发系统时只需调用web接口即可,跨平台又可共用,方便快捷,话不多说来看代码如何实现. 一.创建项目 安装rust后,打开vs新建一个工程目录,我们通过
-
SQL Server 2005附加数据库时Read-Only错误的解决方案
SQL Server 2005附加数据库文件时出现了Read-Only错误,附加的时候,系统提示mdf文件为只读,可是打开文件属性,这个属性不为只读.该怎么解决呢?本文我们就介绍了这一解决方案,接下来就让我们来一起了解一下吧. 两种解决方法如下: 1.重新打开数据库软件,在登录认证框那里选择:Windows authentication进行登录.然后再附加数据库,这时附加的就没有Read-Only了. 2.在*.mdf文件的属性里,找到"安全"页,然后把里面所有的"组或用户名
-
详解Vue中使用v-for语句抛出错误的解决方案
Vue 中使用v-for语句抛出错误的解决方案 今天在维护以前的项目的时候遇见了下面的报错情况,开始我以为是因为jQuery和Vue冲突了,所以把以前的jQuery改了,但是还是出现同样的错误-通过查阅资料,发现是因为循环的变量里面的值重复了,导致Vue报错. 复制代码 代码如下: Uncaught (in promise) TypeError: Cannot read property 'removeChild' of null 接下来查了一下解决方案,发现在Vue 2.0之前的版本可以通过在
-
Android笔记整理之常见错误及解决方案汇总
一.No active compatible AVD's or devices found. Relaunch this configuration after connecting a device or starting an AVD. 修改adb server的端口,设置一个系统环境变量ANDROID_ADB_SERVER_PORT,值7913(随意一个数字),再启动adb server 步骤: a)进入cmd命令模式 b)cd XXX\platform-tools c)adb start
随机推荐
- jQuery实现的页面遮罩层功能示例【测试可用】
- MongoDB 快速入门
- JS公共小方法之判断对象是否为domElement的实例
- drupal 代码实现URL重写
- php注册登录系统简化版
- Python网络编程中urllib2模块的用法总结
- python使用matplotlib绘制柱状图教程
- C#获取关键字附近文字算法实例
- MySQL多表数据记录查询详解
- 在Ubuntu 16.04安装与使用Docker的教程详解
- 用python读写excel的方法
- bash判断文件或文件夹是否存在的shell代码
- js 动态创建 html元素
- Ajax向后台传json格式的数据出现415错误的原因分析及解决方法
- Apache配置独立域名的方法
- Nginx安装与使用教程详解
- jQuery tagsinput在h5邮件客户端中应用详解
- 通过Nginx服务器获取大文件MD5值的配置方法
- python使用PIL模块实现给图片打水印的方法
- 浅谈java面向对象(类,封装,this,构造方法)