支持自己! C ++新手问题传入:
有人可以向我解释为什么会出现此错误以及我该如何解决?
std::vector<std::string> options = vectorOGROptions_.get()
我希望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
答案 0 :(得分:2)
您的get()
函数返回string
,但是您尝试使用此字符串初始化vector,这是不允许的。
你可以使用这样的东西
std::vector<std::string> options;
options.push_back(vectorOGROptions.get());
答案 1 :(得分:0)
您正尝试将字符串分配给矢量。你不能做这个。使用初始化列表。
std::vector<std::string> options{vectorOGROptions_.get()};
答案 2 :(得分:0)
错误表示此get()
函数返回const std::basic_string<char>
,这只是std::string
。使用向量的push_back()
方法:
std::vector<std::string> options;
options.push_back(vectorOGROptions_.get());