drymonfidelia
V2EX  ›  C#

Cursor 生成的代码有个大坑,排查了一晚上才找出原因

  •  1
     
  •   drymonfidelia · Jan 18, 2025 · 4895 views
    This topic created in 480 days ago, the information mentioned may be changed or developed.

    我让它判断输入里只能有字母和数字,其它输入要拦截

    结果上生产环境后经常出现奇怪的输入内容没拦截掉

    "测试".All(x=>char.IsLetterOrDigit(x)) 
    

    最后发现原因出在 Cursor 生成的这行代码输入中文结果居然是 ture

    混在一堆代码里面完全想不到这里能出问题,我手写的话根本不知道 C#有这个函数就不会出问题

    C#这起得啥名太具迷惑性了,和 Python 的 rstrip 一样,rstrip 我是没用错过,但看过不止一个开源项目里面用错了

    12 replies    2025-01-19 15:38:58 +08:00
    AoEiuV020JP
        1
    AoEiuV020JP  
       Jan 18, 2025
    这个,正常, 目前 AI 写的代码还没到不需要 review 的水平,正相反,每一行都要看过一眼,
    csys
        2
    csys  
       Jan 18, 2025 via Android
    使用 LLM 写代码节省出来的时间,是用来给你写测试验证代码功能的
    drymonfidelia
        3
    drymonfidelia  
    OP
       Jan 18, 2025
    @AoEiuV020JP AI 用的冷门函数有些时候 review 也还挺难看出问题,像这个情况看起来还是那回事实际上完全用不了
    AoEiuV020JP
        4
    AoEiuV020JP  
       Jan 18, 2025
    @drymonfidelia #3 那这种情况属于自己写的话也得反复斟酌来回查文档甚至测试几个 api,
    不如直接让 AI 把单元测试搞出来,这种功能明确的最适合让 AI 写测试了,
    drymonfidelia
        5
    drymonfidelia  
    OP
       Jan 18, 2025
    @AoEiuV020JP 自己写的话我会用正则,不会用这个很冷门的内置函数
    AI 估计一看这个函数名字 IsLetterOrDigit ,我的要求是 只能有字母和数字 刚好符合就用了,结果这个函数根本不是这么用的
    Anton
        6
    Anton  
       Jan 18, 2025
    hhhh 老哥惨,这函数没用过的话真发现不了问题
    echohey
        7
    echohey  
       Jan 18, 2025
    怎么没让 cursor 给你生成单测?
    akira
        8
    akira  
       Jan 18, 2025
    测试代码呢。。。
    wweerrgtc
        9
    wweerrgtc  
       Jan 18, 2025
    把代码复制出来 让 gpt 来 review
    drymonfidelia
        10
    drymonfidelia  
    OP
       Jan 18, 2025
    @wweerrgtc 试过了,除非你明确告诉 GPT 哪一行不符合预期,不然 GPT 完全找不出
    SenLief
        11
    SenLief  
       Jan 18, 2025
    ai 生成的一定要写测试
    meteora0tkvo
        12
    meteora0tkvo  
       Jan 19, 2025
    正常,ai 生成的代码也是有 bug 的,所以自己本身要懂代码才能让 ai 生成,压根就不是网传的不懂代码也能利用 ai 写代码
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3245 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 58ms · UTC 14:05 · PVG 22:05 · LAX 07:05 · JFK 10:05
    ♥ Do have faith in what you're doing.