相关疑难解决方法(0)

是否有技术原因使用>(<)代替!=在'for'循环中递增1?

我几乎从未见过for像这样的循环:

for (int i = 0; 5 != i; ++i)
{}
Run Code Online (Sandbox Code Playgroud)

是否有技术原因使用><代替!=for循环中递增1 ?或者这更像是一个惯例?

c c++ for-loop

196
推荐指数
18
解决办法
1万
查看次数

为什么"!="与迭代器而不是"<"一起使用?

我习惯写这样的循环:

for (std::size_t index = 0; index < foo.size(); index++)
{
    // Do stuff with foo[index].
}
Run Code Online (Sandbox Code Playgroud)

但是当我在其他代码中看到迭代器循环时,它们看起来像这样:

for (Foo::Iterator iterator = foo.begin(); iterator != foo.end(); iterator++)
{
    // Do stuff with *Iterator.
}
Run Code Online (Sandbox Code Playgroud)

我发现这iterator != foo.end()是有争议的.如果iterator增加多于一个也可能是危险的.

使用起来似乎更"正确" iterator < foo.end(),但我从未在实际代码中看到过这种情况.为什么不?

c++ iterator stl comparison-operators

49
推荐指数
2
解决办法
1万
查看次数

在Java中组合和排序两个不同长度的数组

我正在为我的"问题"寻找解决方案,这不是一个丑陋的黑客.

在我的Java代码中,我有两个未知长度的数组(因此它们的长度可能不同).我想这样排序:

Array A: {1, 2, 3, 4, 5}
Array B: {6, 7, 8}

New Array: {1, 6, 2, 7, 3, 8, 4, 5}
Run Code Online (Sandbox Code Playgroud)

有没有一个很好的方法来实现这一目标?

谢谢

java arrays sorting

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

用i ++或++ i编写循环

我有一个关于编写循环的问题.我一开始就是

(int i=0; i<10; i++)
Run Code Online (Sandbox Code Playgroud)

但我看到许多专家开始

(int i=0; i<10; ++i)
Run Code Online (Sandbox Code Playgroud)

有没有真正的区别,或者它们是一样的?

当然,我知道预增量和后增量之间的区别.我的意思是在编写循环时我应该使用哪一个?或者取决于.

谢谢!

c c++

0
推荐指数
1
解决办法
127
查看次数

标签 统计

c++ ×3

c ×2

arrays ×1

comparison-operators ×1

for-loop ×1

iterator ×1

java ×1

sorting ×1

stl ×1