170 похожих чатов

Подскажите, приняты ли префиксы field_name_ для приватных полей в в

классе с++? Лучше по-умолчанию без префикса и прибегать к нему только если есть конфликт имен, например в конструкторе? Или лучше по-умолчанию добавлять такой префикс? Понятие что лучше конечно же относительно и это скорее вкусовщина

22 ответов

22 просмотра

Чаще используют префикс m_ Некоторые предпочитают суффикс _

Станислав-Трухан Автор вопроса
Eyed Shovel
Чаще используют префикс m_ Некоторые предпочитают ...

Ой, написал префикс, хотя имел в виду конечно суффикс _. Буквенные префиксы (m_) как по мне выглядят сейчас дремуче, раньше когда не было хорошей подсветки в IDE было полезно. А вопрос ещё и про консистентность, будет ли норм если в классе два приватных поля, один с суффиксом, другой без? Как по мне не очень, но и без всяких суффиксов выглядит код чище. Какие может ещё приняты способы избежания variable shadowing? Например в методе параметр объявлять с префиксом new_, при этом приватные поля без свяких суффиксов. Хотя при этом можно завести созвучные методы например геттер, и тогда придётся все равно в имя приватного поля добавлять суффикс. В python удобно это решается через self (он же this), хотя в c++ так не делают

Станислав Трухан
Ой, написал префикс, хотя имел в виду конечно суфф...

Префиксы - вопрос вкусов, а на подсветку однозначно надеяться не стоит

Станислав Трухан
Ой, написал префикс, хотя имел в виду конечно суфф...

Вот это, конечно, интересные тезисы про дремучесть...

Станислав Трухан
Ой, написал префикс, хотя имел в виду конечно суфф...

Если в классе два поля с одинаковыми именами, отличающиеся суффиксами, автора следует убить

Станислав-Трухан Автор вопроса
Eyed Shovel
Вот это, конечно, интересные тезисы про дремучесть...

Не хотел никого обидеть и это конечно же вкусовщина. Свежих проектов на с++, где применяется венгерская нотация я что-то совсем не встречал, если покажите буду очень благодарен, обязательно ознакомлюсь

Станислав Трухан
Ой, написал префикс, хотя имел в виду конечно суфф...

"Хотя в c++ так не делают". Кто не делает? В питоне self передаётся явно, в плюсах this неявно. Если ты хочешь писать this->field вместо m_field - это твоё право. Правда, зачем...

Станислав Трухан
Не хотел никого обидеть и это конечно же вкусовщин...

За венгерскую нотацию тоже без суда и следствия

Станислав-Трухан Автор вопроса
Eyed Shovel
За венгерскую нотацию тоже без суда и следствия

Ну так по сути m_ это и есть венгерская нотация. m_ - member

Станислав-Трухан Автор вопроса
Eyed Shovel
"Хотя в c++ так не делают". Кто не делает? В питон...

Понятно, что так можно делать, но так не принято делать в c++ по своим причинам.

Станислав-Трухан Автор вопроса
Eyed Shovel
По каким нашим причинам?

Раньше читал про это, попробую еще раз поискать почему так

Aleksander Spichak
а в чем проблема просто префикса _

Вкусовщина, но я предпочитаю m_, ибо так проще отделить переменную без префикса

Eyed Shovel
Вкусовщина, но я предпочитаю m_, ибо так проще отд...

Предлагаю почитать исходники rpclib. Лично мне тяжело

Зависит с согласий code style в данной организации. Я предпочитаю не использовать никаких суффиксов префиксов и прочей ерунды нигде, т.к. это засоряет текст. Да и еще при рефакторинге придется везде это менять. Главное назвать переменную или поле удачным коротким словом, чтобы оно было достаточно понятным, а при развитии кода не пришлось и ее переименовывать. Всякие префиксы обычно делали для того чтобы отыскать при вводе текста название переменной, но не вспоминали. А так m_ и т.п. префиксы помогали вывести их все. Но это сомнительное удобство - проблема памяти и IDE переносится на текст программы.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта