V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
proxytoworld
V2EX  ›  问与答

怎么摆脱用 c 的方法写 cpp

  •  
  •   proxytoworld · Sep 27, 2021 · 2240 views
    This topic created in 1673 days ago, the information mentioned may be changed or developed.

    再写 c++的时候还是跟 c 一样,只定义函数然后调用,并没有用 c++的 class,有点苦恼

    13 replies    2021-09-30 12:45:35 +08:00
    wellsc
        1
    wellsc  
       Sep 27, 2021
    多写写面向对象的语言?
    ysc3839
        2
    ysc3839  
       Sep 27, 2021 via Android
    C++ 不一定要用 class,你可以使劲用 STL 提供的功能,以及新的语言特性。
    我自己就喜欢用智能指针,也在用 C++20 的 coroutine 。
    Ehend
        3
    Ehend  
       Sep 27, 2021
    多用用结构体,然后如果有类,会不会让代码更合理
    xe2vherd
        4
    xe2vherd  
       Sep 27, 2021
    换 rust
    villivateur
        5
    villivateur  
       Sep 27, 2021
    C++ 本来就是一个多功能的语言,你可以用面向过程的方法去写,只要能实现功能就好。然后在写的过程中,慢慢接触 C++ 的新特性,就会慢慢觉得有些功能真好用
    cmdOptionKana
        6
    cmdOptionKana  
       Sep 27, 2021
    先写一段时间 Java,再回头写 C++,尤其是看一些 Java 设计模式的书。不然很难从根本上扭转思维。
    lonewolfakela
        7
    lonewolfakela  
       Sep 27, 2021
    要想让代码看起来像 C++,不能靠加 class,那样只会变成 C with class……
    你需要的是大量使用 template 、疯狂使用 template,加入各种 meta programming 、编译期计算……
    这样,代码好不好使、能不能让人读懂、好不好维护什么的先不谈,至少绝对非常“C++”。
    所以可以从比如先实现一个编译期计算 1000 以内的质数啊、编译期快速排序啊之类的体验一下……
    shakespark
        8
    shakespark  
       Sep 27, 2021 via iPhone
    实现功能就好了,整那么复杂干啥
    Frytea
        9
    Frytea  
       Sep 27, 2021 via Android
    没必要为了面向对象而面向对象,等业务深入自然有一天会发现该用类了
    proxytoworld
        10
    proxytoworld  
    OP
       Sep 27, 2021
    zxCoder
        11
    zxCoder  
       Sep 28, 2021
    多写一些黑魔法,让别人看不懂的代码,美其名曰优化,开销小
    ooool
        12
    ooool  
       Sep 28, 2021
    哈哈哈,我经常像楼上那么干
    agagega
        13
    agagega  
       Sep 30, 2021
    不一定要用到自己写的 class 才算 Cpp. 只要能避开 C 的若干毛病(没有析构函数,裸指针乱飞,各种类型不安全的 cast ),就算是合格的 Cpp 代码了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5653 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 59ms · UTC 06:51 · PVG 14:51 · LAX 23:51 · JFK 02:51
    ♥ Do have faith in what you're doing.