V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
huyomi
V2EX  ›  C++

哎,我这心态对吗,接受一个项目,现在看着这 1000 多个编译警告不想管了。

  •  1
     
  •   huyomi · 284 天前 · 5725 次点击
    这是一个创建于 284 天前的主题,其中的信息可能已经有所发展或是发生改变。
    难受,但是又懒得改。
    44 条回复    2024-01-26 17:30:10 +08:00
    jazzg62
        1
    jazzg62  
       284 天前
    能跑就行
    jazzg62
        2
    jazzg62  
       284 天前   ❤️ 5
    代码和人有一个能跑就行
    i8086
        3
    i8086  
       284 天前
    世上没有不存在完美。
    要么就欺骗自己,屏蔽编辑警告,有句话:眼不见心不烦。
    Tenlearn
        4
    Tenlearn  
       284 天前
    编译警告又不是运行 bug
    qingshui33
        5
    qingshui33  
       284 天前
    我现在这项目也是这样的
    Noicdi
        6
    Noicdi  
       284 天前 via iPhone   ❤️ 2
    反正不是 error ,哪怕做到自己没 warn ,指不定引入的第三方有 warn 嘞
    Yuanlaoer
        7
    Yuanlaoer  
       284 天前
    Alert 还好吧。不同公司里待过,见过的项目里数千个 Alert 的比比皆是。
    hhjuteman
        8
    hhjuteman  
       284 天前
    吃力不讨好,我也不管
    beyondstars
        9
    beyondstars  
       284 天前
    不是所有的 warning 都需要严肃对待吧,有的只是 linter 太过敏感了,例如 ([[nodiscard]]),改为 static member function 的建议等,可以配置一下 linter ,屏蔽一些规则, 让它少输出一些 warning 。
    spadger
        10
    spadger  
       284 天前   ❤️ 1
    我自己的项目,一个警告也不允许有
    sleepybear1113
        11
    sleepybear1113  
       284 天前
    我还专门打开浏览器控制台看了一下,是不是我图片没显示出来,结果是没有图。

    我自己写代码都是尽量避免 warning 的,基本没有。然后公司的项目,一言难尽。只能说,能用就行。很多逻辑是建立在 bug 之上的。因为我看到项目的代码,比如,一个 if 中 Java Enum 对象直接 equals 字符串,IDEA 都 warn 了说不可能相等的,但是我又不敢改,改了说不定逻辑变了就得背锅。

    但是我也会顺手改那些不影响逻辑的 warning ,优化代码,添加注释(不加下次改这里还得费劲理解代码)。然后将改的那部分格式化,缩进这种,至少看起来我动过的能过赏心悦目就行。其他的,交给上帝吧。
    Daniel17
        12
    Daniel17  
       284 天前
    确实有点多,不过不是 error ,问题不大,你要是强迫症就改
    mxT52CRuqR6o5
        13
    mxT52CRuqR6o5  
       284 天前
    不管就不管吧,毕竟整出 error 和 warning 两个不同的概念,就是为了然你区别去对待,如果你全把 warning 当做 error 去处理,不就代表 warning 的设计没有意义了吗
    erictang66
        14
    erictang66  
       284 天前   ❤️ 1
    哈哈哈哈,看起来楼主有代码洁癖
    1423
        15
    1423  
       284 天前
    让领导定,领导让处理,那就是工作内容
    领导不关心,那就不管
    hervey0424
        16
    hervey0424  
       284 天前
    把警告关了
    ugpu
        17
    ugpu  
       284 天前
    C++ 没 warning 只有一种可能 屏蔽了.
    KOMA1NIUJUNSHENG
        18
    KOMA1NIUJUNSHENG  
       284 天前   ❤️ 1
    改不完的,自己会慢慢妥协的。一开始都会不习惯,满满的就习惯了。
    janus77
        19
    janus77  
       284 天前
    又不是不能用.jpg
    ziwen1943
        20
    ziwen1943  
       284 天前
    编译警告不影响功能就行,修代码需要花费大量的时间和精力,要么让你公司加代码静态扫描工具提高代码整体质量,要么就问领导修告警算不算工作量,能不能写周报。如果不行,放弃,错不在你,责不在你。
    pkokp8
        21
    pkokp8  
       284 天前   ❤️ 7
    1000 wanings 0 errors
    修改一处代码
    999 warnings 999 errors
    ctrl-z
    1000 wanings 0 errors
    ydpro
        22
    ydpro  
       284 天前
    正常,人类都有趋利避害的天性
    weidaizi
        23
    weidaizi  
       284 天前
    set(CMAKE_COMPILE_WARNING_AS_ERROR ON)
    weidaizi
        24
    weidaizi  
       284 天前
    上面不小心手滑发出去了......
    ---

    在公司 c++ 应用项目里,建议强制加下面的东西,在 ci 编译 release 的时候才把 sanitizer 关了
    ```
    option(CMAKE_COMPILE_WARNING_AS_ERROR ON)
    option(BUILD_SANITIZER ON)

    if (BUILD_SANITIZER)
    # 开启各种 sanitize
    endif()
    ```
    BeiChuanAlex
        25
    BeiChuanAlex  
       284 天前
    行业经典名言:《又不是不能跑》
    nevermoreluo
        26
    nevermoreluo  
       284 天前
    你要是不说我都忘了手里几个古老的项目 warning 有多少个
    wangtian2020
        27
    wangtian2020  
       284 天前
    不影响下班时间就改改,又不是不能跑
    thorneLiu
        28
    thorneLiu  
       284 天前 via Android
    我会去改 不然它影响我的心情 我的睡眠
    xuelang
        29
    xuelang  
       284 天前
    开始有强迫症,想改。后来发现改不完,只挑重要的改了
    mipawn
        30
    mipawn  
       284 天前
    我这个公司的项目,刚开始我拿着自己的苹果本,打开控制台,日常网页直接崩溃,我以为是我的电脑的问题,8G 内存太小了,然后换了一个 16G M2 的 pro ,结果还是卡成狗,后来才发现是 warning 太多了,问领导,领导说关了 waning 就行。。。
    zypy333
        31
    zypy333  
       284 天前
    见过一个运营商老项目,都没法正常编译,无数 error ,部署项目需要在本地用 eclipse 的强制编译,把.class 文件拿出来,丢到服务器的 webshpere 里去
    bybyte
        32
    bybyte  
       284 天前
    自己的项目追求完美,别人的项目能跑就行
    dearmymy
        33
    dearmymy  
       284 天前
    主要很多警告是第三方的
    samhjn
        34
    samhjn  
       284 天前 via iPhone
    得看看项目处在啥阶段。
    如果没啥用户,挂了也没关系(或者腹黑一点,不关你自己啥事),告警再多一个数量级又何妨?
    但是如果你们和我们现在一样,一个几百毫秒甚至 50 毫秒的业务抖动都要被用户找过来问一番为什么,老板对稳定性的关注空前,那还是把前人技术债还了或者找个冤大头帮你还吧。
    stillyu
        35
    stillyu  
       284 天前   ❤️ 1
    @spadger +1
    拼写错误都不会有
    bfjm
        36
    bfjm  
       284 天前 via iPhone
    除了 UB 其他的不用太仔细看就好了
    churchmice
        37
    churchmice  
       284 天前 via Android
    有啥,我之前一天改过 2w 个警告
    lovelylain
        38
    lovelylain  
       284 天前 via Android
    不引入新的 warning ,存量的除非算工作量,否则不管。
    daimiaopeng
        39
    daimiaopeng  
       284 天前
    你就说能不能用吧
    layxy
        40
    layxy  
       284 天前
    接手的项目没问题就不要动,1000 个 warning 你就是再仔细修很可能会修出问题,后面自己做的时候别引入新 warning 就可以了,历史的东西问题多了去了
    m1klos
        41
    m1klos  
       284 天前
    警告!=错误

    能跑=没问题
    magicianlib
        42
    magicianlib  
       284 天前
    @jazzg62 就跟我凯爹五无尽一个道理,不是你走就是我走
    yanyiming
        43
    yanyiming  
       283 天前
    有些 bug 可能是同源的, 解决一个其它的也就好了.
    whenov
        44
    whenov  
       283 天前
    自己从头写的代码开-Wall -Wextra -Werror ,原来的代码开-w 。如果包含的别人的头文件中有 warning ,就用#pragma GCC diagnostic 处理一下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5597 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 06:43 · PVG 14:43 · LAX 22:43 · JFK 01:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.