1. C++ / Говнокод #24705

    −6

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    class Foo {
    // ...
    private:
        std::vector<int>     v1_;
        std::vector<int>     v2_;
        
        void bar( const std::vector<int>& v ); 
    
    public:
        void doAction( int choice ) {
            if ( choice == 1 ) 
                bar( v1_ );
            else
                bar( v2_ );
        }
    };

    Почему передавать поля класса в свои же методы по ссылке\указателю -- это говнокод?
    Как этого избегать, чтобы получилось универсальней?

    Запостил: OlegUP, 01 Сентября 2018

    Комментарии (5) RSS

    • А с такой сигнатурой?
      void bar( std::vector<int>& v );
      Ответить
    • А кто (кроме тебя) утверждает, что это говнокод?
      Ответить
    • На 64 битную платформу норм скомпилируется ?
      Ответить
    • обернуть std::vector<int> и void bar() в класс
      Ответить
    • Четверо дебилов сверху, на самом деле всё проще пареного хуя - достаточно перейти на "PHP", и не ебать себе мозжечок языком для калькуляторов.
      Ответить

    Добавить комментарий