gpt4 book ai didi

c++ - 返回带有 vector 的 std::string

转载 作者:太空宇宙 更新时间:2023-11-04 14:36:08 25 4
gpt4 key购买 nike

我试图让“CMtoaPlugin::listArnoldNodes()”返回一个字符串“数组”

   std::vector<std::string> ArnoldNodes = CMtoaPlugin::listArnoldNodes();
std::vector<std::string>::iterator it;

for ( it=ArnoldNodes.begin() ; it < ArnoldNodes.end(); it++ )
{
printf("initialize shader %s\n", *it);
}

但这是我得到的,2个条目,这是正确的,但条目的内容不是

初始化Arnold着色器†¡/

初始化 Arnold 着色器。

我做错了什么

最佳答案

您不能使用 printf(或任何可变参数方法)打印 std::string。 g++ 在这里发出警告:

warning: cannot pass objects of non-POD type ‘struct std::string’ through ‘...’; call will abort at runtime

只需使用 cout:

std::cout << "initialize shader " << *it << std::endl;

关于c++ - 返回带有 vector 的 std::string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3375710/

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