w568w 最近的时间轴更新
w568w

w568w

V2EX 第 415660 号会员,加入于 2019-05-26 08:16:51 +08:00
1 G 53 S 88 B
如何防止身边人被深度伪造等技术诈骗?
问与答  •  w568w  •  2 天前  •  最后回复来自 w568w
17
C# 有哪些显著的缺点?
  •  1   
    C#  •  w568w  •  2 天前  •  最后回复来自 nebkad
    39
    创建异步风格 API 接口的最佳实践?
  •  1   
    程序员  •  w568w  •  184 天前  •  最后回复来自 w568w
    3
    各位有没有这种感受:用英文写文本有利于促进思考
    随想  •  w568w  •  186 天前  •  最后回复来自 gpt5
    13
    运行时 GC 成为过 / 可能成为你的性能瓶颈吗?
    程序员  •  w568w  •  204 天前  •  最后回复来自 Kumo31
    15
    突然发现脸萌已经是十年前流行的应用了
    分享发现  •  w568w  •  243 天前  •  最后回复来自 ezrameow
    4
    Blessed C:现代 C 生态系统使用指南
    分享创造  •  w568w  •  314 天前  •  最后回复来自 icyalala
    14
    2023 年,有什么原生级性能的跨平台 UI 框架?
  •  4   
    程序员  •  w568w  •  326 天前  •  最后回复来自 layxy
    106
    检测 Xposed 安装、防止应用被劫持的终极解决方案
  •  2   
    Android  •  w568w  •  2022-01-03 18:09:40 PM  •  最后回复来自 knziha
    41
    w568w 最近回复了
    @KlesaOff #12 根据楼上仁兄的介绍,我也查到了 Rust 仓库关于 reborrow 的讨论: https://github.com/rust-lang/reference/issues/788

    总之这部分目前确实是没有比较详细的官方文档的,内部实现可能也不是特别完备,一般初学不用过深了解,简单理解上面说的「同一时间、同一块内存只能使用一个可变引用」的规则就可以判断代码合法性了。如果编译器不够聪明(例如借用数组切片),就用 unsafe 帮他体面。
    如果是下载第三方只是为了安装包,我一般习惯直接在命令行里 ./gradlew assembleRelease 来编译。

    Android Studio 、JDK 、Gradle 、AGP 、Kotlin Compiler 这五者版本是相互耦合的,能少一个因素是一个。
    问题无关,好奇什么样的项目需要自己从头实现新语言和编译器才好做
    2 天前
    回复了 baobao1270 创建的主题 分享创造 Pure Shell HTTP Server
    cool ,这才是真正的 shell

    另有一些语法风格上的建议:

    1. function 关键字是兼容一些远古 shell 给出的。既然指定了 bash ,用 server() {} 就好了;

    2. 函数内的变量最好用 local 声明,否则作用域会泄漏到函数外;

    3. 可以用 shellcheck 过一遍,可能有其他忽略的点
    2 天前
    回复了 w568w 创建的主题 问与答 如何防止身边人被深度伪造等技术诈骗?
    @paopjian @murmur 总归要试一试,我现在也只能强化反诈教育,期望抖音快手多推送点反诈宣传

    @moefishtang @fivee @wangshushu @mywaiting 感觉两步验证的思想对这个确实挺合适的。基于密钥的、基于生物的、基于文化的、基于个人隐私的,全齐了,哈哈

    @xjh5572 现在现金消费怕是寸步难行了,出门揣那么多现金也不方便。

    @loveqianool @dinghmcn @shadowyue 反诈中心 app 真能检测诈骗通话?感觉可靠性不是很高。

    @H97794 @0xC000009F 哎,这事儿太伤和气了。其实这问题也不限于双亲,我兄弟姐妹辈也有被 deepfake 骗过的… 不好把人家钱都弄过来吧
    2 天前
    回复了 zhangchongjie 创建的主题 Linux Arch 默认不能 usb 唤醒?
    发现上面说的有点离题了。然后打了一大段字被 V2EX 吞掉了……

    为了说明你的问题和 struct 其实没有关系,这是一个简化的例子:

    fn main() {
    let mut a = 42;

    let mut_a = &mut a;
    let another_mut_a = &mut *mut_a;
    *another_mut_a = 12345;
    *mut_a = 42;

    println!("{}", a);
    }
    Check: https://doc.rust-lang.org/nomicon/borrow-splitting.html

    我记得这个行为有一些严格的 references ,不过找不到了。翻一下 Language references 吧。

    简单来说:借用检查器理解一些基本的东西,它确实充分理解 struct ,知道可以同时借用 struct 的不相交字段。

    至于最后一个例子,Rust 的作用域是语义的,也就是说:

    fn main() {
    let mut v = (136, 139);
    let m = &mut v;
    let m0 = &mut m.0;
    *m0 = 137; // <-- 从这一行开始,不再使用 m0 ,因此可以理解为 m0 在这里生命结束
    m.1 = 42;
    println!("{:?}", v)
    }
    3 天前
    回复了 wenerme 创建的主题 程序员 原来写代码时候的我们都会进行施法前摇
    #include 算不算请神上身
    3 天前
    回复了 ForkNMB 创建的主题 Linux Linux 定时任务添加
    有 systemd timer 用 systemd timer ,比 crontab 更高级。crontab 存留的意义是给没有 systemd 的系统和拒绝更新知识的老运维用的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2922 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 03:56 · PVG 11:56 · LAX 19:56 · JFK 22:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.