gpt4 book ai didi

c++-amp - 受限 C++-AMP 不支持类型 'string'

转载 作者:行者123 更新时间:2023-12-02 02:00:47 26 4
gpt4 key购买 nike

我正在尝试复制 boost::variant二维矢量转化为array<T,N> .使用指令 copy(vectorName.begin(), extentName); .首先我得到错误,因为矢量类型是 variant这是可以理解的。但是,在我将矢量类型更改为字符串后,我收到一条错误消息,指出受限放大器不支持此类型。以下片段是目标代码:

    const int x = 100;
const int y = 100;

concurrency::extent<2> eA(x,y), eB(x,y), eC(x,y);
concurrency::array<string, 2> mA(eA), mB(eB), mC(eC);

tCopyIn.Start();
copy(masterList[0].begin(), mA);
copy(masterList[1].begin(), mB);
copy(masterList[2].begin(), mC);
tCopyIn.Stop();

据此:

vector<vector<vector<boost::variant<string, float>>>> masterList;

有没有办法在 C++-AMP 中处理字符串?

最佳答案

错误消息是正确的,不幸的是,C++ AMP 不支持字符串或字符。支持的最小数据类型是 int。有一些技巧/技术可以绕过这个限制,它们涉及将字符变大成整数。

这里有一篇关于如何执行此操作的好文章:C++ AMP: It's got character, but no char!另一个这里有源代码 String search sample with C++ AMP .

关于c++-amp - 受限 C++-AMP 不支持类型 'string',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17310521/

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