gpt4 book ai didi

c++ - 无法推断出 const auto&

转载 作者:搜寻专家 更新时间:2023-10-31 00:09:30 24 4
gpt4 key购买 nike

我有下面这行代码,效果很好:

const auto& dict = m_DictionaryAbbreviationsAndEnglish.Content;

现在我想引入一个“if-then”子句,但编译器告诉我“无法推断‘auto’类型(需要初始化程序):

const auto& dict;

if (uSkipAbbreviationsAndEnglish)
{
dict = m_DictionaryNoAbbreviationsNoEnglish.Content();
}
else
{
dict = m_DictionaryAbbreviationsAndEnglish.Content();
}

但是,当我这样初始化它时......

const auto& dict=NULL;

...,我无法使用这样的代码分配“dict”:

dict = m_DictionaryNoAbbreviationsNoEnglish.Content();

错误是“表达式必须是可修改的左值。”

谁能告诉我如何正确执行此操作?

谢谢。

ps:内容是这样的:

map<wstring,wstring> &clsTranslations::Content()
{
return m_content;
}

最佳答案

这就是条件运算符的用途:

const auto& dict = uSkipAbbreviationsAndEnglish ? 
m_DictionaryNoAbbreviationsNoEnglish.Content() :
m_DictionaryAbbreviationsAndEnglish.Content();

关于c++ - 无法推断出 const auto&,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42889550/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com