简体   繁体   English

C ++ - 转换std :: basic_string <char>

[英]C++ - Conversion std::basic_string<char>

Brace yourselves! 支撑你自己! C++ newbie question incoming: C ++新手问题传入:

Can someone explain to me why this error occurs and how should I fix it? 有人可以向我解释为什么会出现这种错误,我该如何解决?

std::vector<std::string> options = vectorOGROptions_.get()

I want to get options var as std::vector<std::string> but it seems my vectorOGROptions property returns a different type.. 我想将options var作为std::vector<std::string>但似乎我的vectorOGROptions属性返回一个不同的类型。

error: conversion from ‘const std::basic_string<char>’ to non-scalar type ‘std::vector<std::basic_string<char> >’ requested

Your get() function returns string , but you are trying to initialize vector with this string, that's not allowed. 你的get()函数返回string ,但是你试图用这个字符串初始化vector,这是不允许的。

You can use something like this 你可以使用这样的东西

std::vector<std::string> options;
options.push_back(vectorOGROptions.get());

You are trying to assign to a vector a string. 您正在尝试将向量分配给字符串。 You cannot do this. 你不可以做这个。 Use an initialiser list. 使用初始化列表。

std::vector<std::string> options{vectorOGROptions_.get()};

The error says that this get() function returns const std::basic_string<char> , which is nothing but std::string . 错误说这个get()函数返回const std::basic_string<char> ,这只不过是std::string Use vector's push_back() method: 使用vector的push_back()方法:

std::vector<std::string> options;
options.push_back(vectorOGROptions_.get());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 没有匹配的函数来调用&#39;std :: basic_string <char> :: basic_string C ++ - no matching function for call to 'std::basic_string<char>::basic_string c++ C++ std::basic_string/char_traits 特化 - C++ std::basic_string/char_traits specialization 无法从&#39;const std :: __ 1 :: basic_string转换 <char> 到&#39;std :: __ 1 :: basic_string <char> *” - No viable conversion from 'const std::__1::basic_string<char> to 'std::__1::basic_string<char> *' C ++错误:无法调用&#39;(std :: string {aka std :: basic_string <char> })(std :: string&)&#39; - C++ Error: no match for call to ‘(std::string {aka std::basic_string<char>}) (std::string&)’ 错误无法转换 &#39;std::string {aka std::basic_string<char> }&#39; 到 &#39;char&#39; 赋值 - C++ - Error cannot convert 'std::string {aka std::basic_string<char>}' to 'char' in assignment - C++ C ++错误:无法转换&#39;std :: basic_string <char> &#39;至&#39;const char *&#39; - C++ error: cannot convert ‘std::basic_string<char>’ to ‘const char*’ C++“错误:传递&#39;const std::map <int, std::basic_string<char> &gt;&#39; 作为 &#39;this&#39; 的论点...&quot; - C++ "error: passing 'const std::map<int, std::basic_string<char> >' as 'this' argument of ..." 转换 std::basic_string<Char> 串起来 - Convert std::basic_string<Char> to string C++ 候选模板被忽略:推断参数'T'的冲突类型('std::__1::basic_string<char> ' 与 'char [4]')</char> - C++ Candidate template ignored: deduced conflicting types for parameter 'T' ('std::__1::basic_string<char>' vs. 'char [4]') C ++ FindFirstFile无法将const char转换为basic_string - c++ FindFirstFile Cannot convert const char to basic_string
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM