我试图做一个循环时的长度停止@arr1和@arr2均为零.我收到了这条警告信息
Useless use of private array in void context
Run Code Online (Sandbox Code Playgroud)
当我用这个
while (scalar (@arr1, @arr2) ) {
#more code
}
Run Code Online (Sandbox Code Playgroud)
为什么我会收到警告?
我在Java中被告知我应该避免修改原始参数,例如
public int doStuff(int begin, int end) {
/* loop or something */
begin++; //bad
end--; //also bad
/* end loop */
return
}
Run Code Online (Sandbox Code Playgroud)
相反,我应该做点什么
public int doStuff(int begin, int end) {
int myBegin = begin; //something like this
int myEnd = end;
/* stuff */
return
}
Run Code Online (Sandbox Code Playgroud)
所以,我一直在用lua做这件事
function do_stuff(begin, last)
local my_begin = begin
local my_last = last
--stuff
my_begin = my_begin + 1
my_last = my_last - 1
--stuff
end
Run Code Online (Sandbox Code Playgroud)
但是,我想知道是否
function do_stuff(begin, last)
--stuff
begin = …Run Code Online (Sandbox Code Playgroud) 我正在学习c ++,并且我已经了解到,由于未定义的行为,会发生段错误.是否有过保证会发生段错误的情况?或者它总是未定义的行为?
假设我正在浏览一个向量(不一定是线性的,所以我不能只使用map)而且我需要在满足某些条件时更改一个元素.我会想用一些变量来跟踪我的位置,例如current变量之类的东西
let mut v = vec![1, 2, 3, 4];
let mut current = &mut v[0];
Run Code Online (Sandbox Code Playgroud)
然后检查current某些条件,看是否需要更改.但是,当我这样做的时候
current = &mut v[1];
Run Code Online (Sandbox Code Playgroud)
它给了我cannot borrow v as mutable more than once at a time.
我觉得这应该被允许,因为我只使用了一个变量,而且我再也无法访问旧的借用了.
有什么方法可以让我知道我正在给第一次借回来,所以我不是要借两次?或者我一直在考虑这个错误,我应该使用不同的生锈习惯用法?我通过使用向量的indeces而不是可变引用来解决这个问题,但我认为"遍历使用a current然后更改它"的问题不仅仅是向量.如果我的数据结构没有多余的怎么办?
如何像 vim-surround 一样选择周围的括号?我知道我可以选择<alt-a>(或m选择之间的文本,但是如何在末尾获得两个光标?
我正在努力了解所有权模式.由于Rust中只能有一个所有者,这是否意味着浅拷贝是不可能的?有没有类似于浅拷贝的东西?我猜你可以用引用做一些事情,但这会迫使你使用不同的类型?
我想找到两个数组之间相同的所有元素,包括在两个数组中重复多次的元素.例如,我想要
[1,1,1,2]
Run Code Online (Sandbox Code Playgroud)
和
[1,1,3,4]
Run Code Online (Sandbox Code Playgroud)
给
[1,1]
Run Code Online (Sandbox Code Playgroud)
我可以遍历数组并跟踪它,但我想知道是否有更多的红宝石方式这样做.
有没有一种快速的方法为 Intellij 生成一堆常量。就像我打字一样
VARIABLE_A = 10;
VARIABLE_B = 20;
...
Run Code Online (Sandbox Code Playgroud)
public static final int并在所有这些前面添加一些快捷方式?
ownership ×2
rust ×2
c++ ×1
convention ×1
hotkeys ×1
kakoune ×1
lua ×1
perl ×1
ruby ×1
while-loop ×1