小编Sco*_* L.的帖子

结构拥有函数的Rust范围规则

我试图了解impl块内定义的函数的范围究竟是什么,但不接受&self作为参数.例如,为什么下面的代码块不能编译?我收到错误"无法generate_a_result在此范围内找到功能".

pub struct Blob {
    num: u32,
}

impl Blob {
    pub fn new() -> Blob {
        generate_a_result()
    }

    fn generate_a_result() -> Blob {
        let result = Blob {
            num: 0
        };

        result
    }
}
Run Code Online (Sandbox Code Playgroud)

struct scope function rust

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

用于初始化动态分配的数组的Ada语法

在Ada中初始化动态分配的数组的正确语法是什么?我试过这个:

type Short_Array is array (Natural range <>) of Short;
Items : access Short_Array;
Items := new Short_Array(1..UpperBound)'(others => 0);
Run Code Online (Sandbox Code Playgroud)

这导致编译器错误 - "二元运算符预期".还有这个:

type Short_Array is array (Natural range <>) of Short;
Items : access Short_Array;
Items := new Short_Array(1..UpperBound);
Items.all := (others => 0);
Run Code Online (Sandbox Code Playgroud)

这似乎令人惊讶地提升了一个SEGFAULT.不知道那里发生了什么,但想在我开始追逐我的尾巴之前得到正确的语法.

ada gnat

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

标签 统计

ada ×1

function ×1

gnat ×1

rust ×1

scope ×1

struct ×1