小编Tim*_*ick的帖子

如何返回常量值?

我想写一个小型阶乘库。请查看库主模块内的代码:

pub fn results() -> const [i8; 6] { [
      1,
      1,
      2,
      6,
     24,
    120,
    //720 is too large for i8.
] }

pub fn results() -> const [i32; 13] { [
              1,
              1,
              2,
              6,
             24,
            120,
            720,
          5_040,
         40_320,
        362_880,
      3_628_800,
     39_916_800,
    479_001_600,
    //6_227_020_800 is too large for i32.
] }
Run Code Online (Sandbox Code Playgroud)

对于第一个函数的返回类型,它给了我这个错误:

pub fn results() -> const [i8; 6] { [
      1,
      1,
      2,
      6,
     24,
    120,
    //720 is too large for i8.
] }

pub fn …
Run Code Online (Sandbox Code Playgroud)

rust

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

是`&variable = null;`可能吗?

如果将指针设置为null,则删除该变量.它不能再使用了,它不再需要您的存储空间.指针的名称代表其值.它的价值永远&someVariable.我可以这样做:&someVariable = null;

[编辑]当我写这篇文章时,我对C++很陌生,所以我有多种误解.

要删除指针,您必须delete ptr;而不是通过将其设置为null ptr = nullptr;.

&someVariable 是一个右值,因此无法分配任何东西.

它是0,NULL或者nullptr不是null.

总而言之,你永远不应该delete &anything;,即使你很幸运,它也会编译.只需删除分配时获得的指针即可anything.

c++ syntax pointers

-6
推荐指数
1
解决办法
142
查看次数

标签 统计

c++ ×1

pointers ×1

rust ×1

syntax ×1