【问题标题】:How to convert a _variant_t datatype to wstring如何将 _variant_t 数据类型转换为 wstring
【发布时间】:2013-07-29 14:56:07
【问题描述】:

我正在尝试使用 ADO 库与 MDB 文件进行通信。此刻我能够阅读所有的专栏。我的代码依赖于期望 wstring 作为参数的其他库。以下代码返回一个 _variant_t 数据类型,但是函数预期接收的参数是 wstring 类型。我尝试了几种转换方法,但似乎都没有奏效。

wstring effectDescription = recordset->Fields->GetItem("effectDescription")->Value

构建器输出:未找到采用“_variant_t”类型右侧操作数的运算符(或没有可接受的转换)

任何帮助将不胜感激!

【问题讨论】:

    标签: c++ string ado recordset variant


    【解决方案1】:

    _variant_t 可以保存许多类型,但大概它保存类似字符串的东西。在这种情况下,_variant_t::operator _bstr_t 会给你一个_bstr_t,它又会有一个operator const wchar_t*,最后wstring 的 ctor 将接受 taht。请注意,在 C++ 中您不会只获得一次隐式转换,这就是它无法编译的原因。明确转换。

    【讨论】:

      猜你喜欢
      • 2012-05-11
      • 2023-03-12
      • 1970-01-01
      • 2017-12-12
      • 2013-07-28
      • 1970-01-01
      • 1970-01-01
      • 2020-10-22
      • 2014-10-09
      相关资源
      最近更新 更多