Rust中的二维向量 [英] Two dimensional vectors in Rust

查看:284
本文介绍了Rust中的二维向量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

编者注:该问题早于Rust 0.1 (标记为2013-07-03),在语法上不是有效的Rust 1.0代码.答案可能仍然包含有价值的信息.

Editor's note: This question predates Rust 0.1 (tagged 2013-07-03) and is not syntactically valid Rust 1.0 code. Answers may still contain valuable information.

有人知道如何在Rust中创建可变的二维向量并将其传递给要操纵的函数吗?

Does anyone know how to create mutable two-dimensional vectors in Rust and pass them to function to be manipulated?

这是我到目前为止尝试过的:

This is what I tried so far:

extern crate std;

fn promeni(rec: &[u8]) {
    rec[0][1] = 0x01u8;
}

fn main() {
    let mut rec = ~[[0x00u8,0x00u8],
        [0x00u8,0x00u8]
    ];
    io::println(u8::str(rec[0][1]));
    promeni(rec);
    io::println(u8::str(rec[0][1]));
}

推荐答案

您可以使用宏 vec! 创建2d向量.

You could use the macro vec! to create 2d vectors.

fn test(vec: &mut Vec<Vec<char>>){
    vec[0][0] = 'd';
    ..//
    vec[23][79] = 'd';
}

fn main() {

    let mut vec = vec![vec!['#'; 80]; 24];

    test(&mut vec);
}

这篇关于Rust中的二维向量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆