boost变量分布流和流错误
boost variant istringstream and stream error
我使用的是Visual Studio 2010 sp1。在Windows 7 中使用c++和boost 1.47
我有以下代码:
typedef boost::variant<unsigned int,int,long,double,bool,string,istringstream,int32_t,
uint32_t,int64_t,uint32_t,sql::SQLString> SQLVariant;
我还试着用istream替换istringstream。我确实得到以下错误:
Error 13 error C2249: 'std::basic_ios<_Elem,_Traits>::operator =' :
no accessible path to private member declared in virtual base 'std::basic_ios<_Elem,_Traits>'
c:program files (x86)microsoft visual studio 10.0vcincludeistream 860
如果我声明istringstream I;我不明白这个错误。如果我声明istream i2,我确实会得到类似的错误;
我做错了什么?
我需要istream或派生类的原因是,它是我正在开发的sql库。特别是,对于mysql实现,我需要isttream或istringstream来调用setBlob。。。
我找到了一个临时的解决方案,允许传递一个字符串并用该字符串初始化字符串流。然而,如果我的变体类型可以采用istream流或更好的istream ,那就太好了
谢谢,Frank
Boost报价。变体:
有界类型的要求如下:
- CopyConstructible【20.1.3】
- Destructor坚持无抛出异常的安全保障
- 在变量模板实例化时完成。(请参阅boost::recursive_wrapper,了解一个接受不完整类型以启用递归变体类型的类型包装器。)
std::istringstream不可复制构造。
相关文章:
- 警告处理为错误这里有什么问题
- "error: no matching function for call to"构造函数错误
- boost::进程间消息队列引发错误
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- QT在错误的班级中寻找空位
- vector.resize()中的分配错误
- 代码在main()中运行,但在函数中出现错误
- 释放错误后堆使用
- (C++)分析树以计算返回错误值的简单算术表达式
- Project Euler问题4的错误解决方案
- 我的字符计数代码计算错误.为什么
- 从"int*"强制转换为"unsigned int"会丢失精度错误
- 尝试导入pybind-opencv模块时出现libgtk错误
- CMake项目Boost库错误:Boost/config/compiler/gcc.hpp:165:10:致命错误:cs
- 分布MPI散点错误的数字
- 删除了C 重新分布文件,在打开Visual Studio项目时会导致错误
- boost变量分布流和流错误
- [C++]查找有关分布(函数)指针的错误
- 均匀实分布中的c++错误