首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >旋转QByteArray

旋转QByteArray
EN

Stack Overflow用户
提问于 2014-11-17 14:43:40
回答 2查看 2.8K关注 0票数 3

我想在取景器里旋转相机。我的想法是得到QByteArray并旋转它,这样像素就会在X和Y方向上被镜像。所以如果我的数组是这样的:

代码语言:javascript
复制
5 2 6 8
3 5 2 1
6 7 4 5
3 2 1 7

应该是这样的:

代码语言:javascript
复制
7 1 2 3
5 4 7 6
1 2 5 3
8 6 2 5

谁能告诉我我怎么做到的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-17 17:02:53

您可以使用std::这样的预订

代码语言:javascript
复制
#include <algorithm> 

QByteArray reverse = barr; 
std::reverse(reverse.constBegin(), reverse.constEnd());

或者用这个

代码语言:javascript
复制
QByteArray reverse;
std::reverse_copy(barr.constBegin(), barr.constEnd(), reverse.begin());
票数 3
EN

Stack Overflow用户

发布于 2014-11-17 15:10:46

您如何访问您的QByteArray

如果迭代器是一个可接受的解决方案,您可以这样做:

代码语言:javascript
复制
for(std::reverse_iterator<char*> rBegin(myQByteArray.data() + myQByteArray.size()); rBegin != std::reverse_iterator<char*>(myQByteArray.data()); ++rBegin){
    std::cout << *rBegin << " ";
}

请注意,如果要使用const char* QByteArray::data()调用,只需在模板中使用const初始化std::reverse_iterator

代码语言:javascript
复制
std::reverse_iterator<const char*> rBegin(myQByteArray.data())
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26975192

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档