zoukankan      html  css  js  c++  java
  • 2020-09-26:请问rust中的&和c++中的&有哪些区别?

    福哥答案2020-09-26:#福大大架构师每日一题#

    变量定义:c++是别名。rust是指针。
    取地址和按位与,c++和rust是相同的。

    c++测试代码如下:

    #include <iostream>
    struct Point {
        int x;
        int y;
    };
    
    int main()
    {
        Point p1 = { 25,25 };
        printf("p1.x address:%d
    ", &p1.x);
        printf("p1 address:%d
    ", &p1);
        Point& p2 = p1;
        printf("p2.x address:%d
    ", &p2.x);
        printf("p2 address:%d
    ", &p2);
        printf("p1和p2地址相同,说明p2起到了别名的作用。p2.x和p2地址相同,说明p2保存的是内容,而不是地址。
    ");
        std::system("pause");
        return 0;
    }
    

      

    运行结果如下:


    rust测试代码如下:

    struct Point {
        x: i64,
        y: i64,
    }
    
    fn main() {
        let p1 = Point { x: 25, y: 25 };
        println!("p1.x address: {:p}", &p1.x);
        println!("p1 address: {:p}", &p1);
        let p2: &Point = &p1;
        println!("p2.x address: {:p}", &p2.x);
        println!("p2 address: {:p}", &p2);
        println!("p1和p2地址不同,说明p2不是p1的别名。p2.x和p2地址不同,说明p2是指针。");
    }
    

      

    运行结果如下:


    ***
    [评论](https://user.qzone.qq.com/3182319461/blog/1601075072)

  • 相关阅读:
    协议
    创建属性、属性标签、对象序列化
    JS中generater和箭头函数
    前端forEach在Array、map、set中的使用,weakset,weakmap
    更新最大内码,金蝶开发
    ERP,还需要WEB开发吗
    可读性太低的SQL语句
    事务,视图和索引
    简单子查询
    创建表并添加约束
  • 原文地址:https://www.cnblogs.com/waitmoon/p/13735979.html
Copyright © 2011-2022 走看看