标签: vector

什么更快,用vector :: iterator或with()迭代STL向量?

在性能方面,什么会更快?有区别吗?它是平台依赖的吗?

//1. Using vector<string>::iterator:
vector<string> vs = GetVector();

for(vector<string>::iterator it = vs.begin(); it != vs.end(); ++it)
{
   *it = "Am I faster?";
}

//2. Using size_t index:
for(size_t i = 0; i < vs.size(); ++i)
{
   //One option:
   vs.at(i) = "Am I faster?";
   //Another option:
   vs[i] = "Am I faster?";
}
Run Code Online (Sandbox Code Playgroud)

c++ performance iterator stl vector

57
推荐指数
6
解决办法
6万
查看次数

将R向量转换为1个元素的字符串向量

我现在正在使用编程语言R. 我有一个矢量:

a <- c("aa", "bb", "cc")
Run Code Online (Sandbox Code Playgroud)

我想将它们粘贴到系统命令中,我现在正在尝试这种方式:

args <- paste(a, sep=" ")
system(paste("command",args, sep=" "))
Run Code Online (Sandbox Code Playgroud)

但现在我只得到参数aa,我想要参数aa,bb和cc ......

谁知道我做错了什么?

string arguments r system vector

57
推荐指数
1
解决办法
8万
查看次数

为什么使用QVector(Qt)而不是std :: vector

我是C++和Qt的新手,但我非常擅长C#/ Java.

关键是我喜欢跨平台,但我和Qt混淆了.是不是std::vector已经跨平台了,Qt不提供相当于非跨平台的东西吗?

另外如何FileQFile不同?

链接会很好,谢谢:)

c++ qt vector

56
推荐指数
3
解决办法
3万
查看次数

如何将std :: string复制到std :: vector <char>?

可能重复:
将std :: string转换为std :: vector <char>

我试过了:

std::string str = "hello";
std::vector<char> data;
std::copy(str.c_str(), str.c_str()+str.length(), data);
Run Code Online (Sandbox Code Playgroud)

但它不工作=(所以我不知道如何复制std::stringstd::vector<char>std::vector<uchar>

c++ string copy vector

56
推荐指数
2
解决办法
9万
查看次数

如何用R中的向量元素划分矩阵的每一行

我想用固定的向量划分矩阵的每一.例如

mat<-matrix(1,ncol=2,nrow=2,TRUE)
dev<-c(5,10)
Run Code Online (Sandbox Code Playgroud)

mat/dev分割各dev.

     [,1] [,2]
[1,]  0.2  0.2
[2,]  0.1  0.1
Run Code Online (Sandbox Code Playgroud)

但是,我希望得到这个结果,即按行进行操作:

rbind(mat[1,]/dev, mat[2,]/dev)

     [,1] [,2]
[1,]  0.2  0.1
[2,]  0.2  0.1
Run Code Online (Sandbox Code Playgroud)

到那儿有明确的命令吗?

r vector matrix

56
推荐指数
2
解决办法
6万
查看次数

假设STL向量存储始终是连续的是否安全?

如果你有一个已调整大小的STL向量,是否可以安全地获取元素0的地址并假设其余的向量将跟随内存?

例如

vector<char> vc(100);
// do some stuff with vc
vc.resize(200);
char* p = &vc[0];
// do stuff with *p
Run Code Online (Sandbox Code Playgroud)

c++ stl vector

55
推荐指数
4
解决办法
1万
查看次数

每个C++,从矢量元素拉

我试图在一个攻击向量上做一个foreach,每个攻击有一个唯一的ID,1-3.

类方法采用1-3的键盘输入.

我试图使用foreach在m_attack中运行我的元素以查看数字是否匹配,如果它确实...做某事.

我看到的问题是:

a'for each' statement cannot operate on an expression of type "std::vector<Attack
Run Code Online (Sandbox Code Playgroud)

我是否完全错了,我有C#的经验,并且是我的基础,任何帮助都将受到赞赏.

我的代码如下:

在标题中

vector<Attack> m_attack;
Run Code Online (Sandbox Code Playgroud)

在班上

int Player::useAttack (int input)
{

    for each (Attack* attack in m_attack) // Problem part
    {  
        //Psuedo for following action
        if (attack->m_num == input)
        {
            //For the found attack, do it's damage
            attack->makeDamage();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c++ each for-loop vector

55
推荐指数
4
解决办法
22万
查看次数

在Clojure中预先添加到矢量的惯用方法是什么?

在列表前面很容易:

user=> (conj '(:bar :baz) :foo)
(:foo :bar :baz)
Run Code Online (Sandbox Code Playgroud)

附加到矢量很简单:

user=> (conj [:bar :baz] :foo) 
[:bar :baz :foo]
Run Code Online (Sandbox Code Playgroud)

在获取向量时,我如何(惯用)前置到向量?这不起作用,因为它返回seq,而不是向量:

user=> (cons :foo [:bar :baz])     
(:foo :bar :baz)
Run Code Online (Sandbox Code Playgroud)

这很难看(IMVHO):

user=> (apply vector (cons :foo [:bar :baz])) 
[:foo :bar :baz]
Run Code Online (Sandbox Code Playgroud)

注意:我基本上只想要一个可以附加和前置的数据结构.附加到大型列表应该有很大的性能损失,所以我想到了矢量..

vector append clojure prepend

54
推荐指数
3
解决办法
2万
查看次数

使用C++ vector :: insert()添加到向量的末尾

我正在写一小段代码,我必须根据向量元素中的值将值插入某个地方的C++ STL向量中.我正在使用该insert()功能来完成此任务.我意识到,当我想在向量的末尾添加一个新元素时,我可以简单地使用push_back().但为了保持我的代码看起来不错,我想专门使用insert(),它将指向所需插入点之后的元素的迭代器和要插入的值作为输入.如果作为参数传入的迭代器的值是v.end(),v我的向量在哪里,它的工作方式是否相同push_back()

非常感谢!

c++ iterator stl vector

54
推荐指数
2
解决办法
7万
查看次数

将元素插入向量的特定位置

我想将一个元素插入到向量的特定位置,我可以使用一个赋值:

// vec1 and 2 have the same length & filled in somehow
vec1;
vec2;

vec1[i] = vec2[i] // insert vec2[i] at position i of vec1
Run Code Online (Sandbox Code Playgroud)

或者我必须使用insert():

vector<sometype>::iterator iterator = vec1.begin();

vec1.insert(iterator+(i+1), vec2[i]);
Run Code Online (Sandbox Code Playgroud)

c++ stl insert vector visual-c++

54
推荐指数
2
解决办法
18万
查看次数

标签 统计

vector ×10

c++ ×7

stl ×4

iterator ×2

r ×2

string ×2

append ×1

arguments ×1

clojure ×1

copy ×1

each ×1

for-loop ×1

insert ×1

matrix ×1

performance ×1

prepend ×1

qt ×1

system ×1

visual-c++ ×1