Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.05.2012, 00:04   #11
t2skler
Форумчанин
 
Аватар для t2skler
 
Регистрация: 25.11.2010
Сообщений: 164
По умолчанию

Цитата:
Сообщение от pproger Посмотреть сообщение
2t2skler
на, почитай
http://www.insidecpp.ru/art/23/
Спасибо за статью, действительно интересные минусов больше, чем плюсов. И ещё 2 вопроса. Я использую префикс "its" у переменных относящихся к классу и не использую при обращении к внутренним переменным this. Как вы обозначаете свои внутри классовые переменные и необходимо ли всегда использовать this ?
Возможно Я Быдлокодер ©.
t2skler вне форума Ответить с цитированием
Старый 03.05.2012, 00:09   #12
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2t2skler
Цитата:
Как вы обозначаете свои внутри классовые переменные
something_like_that

функции-члены же в lowerCamelCase

Цитата:
и необходимо ли всегда использовать this
нет. зачем?
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 03.05.2012, 00:12   #13
t2skler
Форумчанин
 
Аватар для t2skler
 
Регистрация: 25.11.2010
Сообщений: 164
По умолчанию

Цитата:
Сообщение от pproger Посмотреть сообщение
2t2skler
нет. зачем?
А вдруг будет объявлена переменная с таким же именем, что и переменная класса и присвоение будет произведено не той переменной?
Возможно Я Быдлокодер ©.
t2skler вне форума Ответить с цитированием
Старый 03.05.2012, 00:17   #14
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2t2skler
Цитата:
А вдруг будет объявлена переменная с таким же именем, что и переменная класса и присвоение будет произведено не той переменной?
во-первых, ты спросил ВСЕГДА ЛИ нужно писать this. естественно, когда одинаковые имена в параметрах и членах класса нужно использовать this. во-вторых, нужно избегать таких случаев
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 03.05.2012, 00:21   #15
t2skler
Форумчанин
 
Аватар для t2skler
 
Регистрация: 25.11.2010
Сообщений: 164
По умолчанию

Всем спасибо за ликбез в стиле с++. Теперь венгерскую нотацию использовать в своём коде не буду. Она и раньше мозолила мне глаза, но теперь все аргумента за её неиспользование.
Возможно Я Быдлокодер ©.
t2skler вне форума Ответить с цитированием
Старый 03.05.2012, 09:18   #16
Blade
Software Engineer
Участник клуба
 
Аватар для Blade
 
Регистрация: 07.04.2007
Сообщений: 1,618
По умолчанию

Вообще не представляю, зачем могла быть нужна венгерская нотация для когда на ООП языке. Венгерская нотация используется только для базовых типов. Базовые типы в ООП проекте должны фигурировать только на самых нижних уровнях абстракции, выше должны использоваться бизнес-сущности (относящиеся к бизнес-логике). Базовые типы могут встречаться так же в каких-то специфических местах, типа счетчиков, но они никак не должны передаваться между модулями.
t2skler, если у вас в ООП коде преобладают базовые типы, которые расползаются по всему проекту так, что не понятно при чтении какой используется тип, это не повод использовать венгерскую нотацию, это повод узнать про базовые принципы ООП и начать проектировать свои программы в соответствии с ними.
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
Blade вне форума Ответить с цитированием
Старый 03.05.2012, 13:52   #17
t2skler
Форумчанин
 
Аватар для t2skler
 
Регистрация: 25.11.2010
Сообщений: 164
По умолчанию

classes in class:
type NormalCase;

private/protected members of class:
type _lowerCamelCase;

functions of class:
return_type lowerCamelCase;

return_type func(type lower);
Возможно Я Быдлокодер ©.
t2skler вне форума Ответить с цитированием
Старый 04.05.2012, 00:40   #18
_Bers
Старожил
 
Регистрация: 16.12.2011
Сообщений: 2,329
По умолчанию

Код:
value;    //typical or argument
aValue;  //only argument
gValue;  //only global
gVALUE; //only global const
mValue;  //only member;
mVALUE; //only member const;
sValue;   //only static;
sVALUE;  //only static const
eVALUE;  //only enum;

typedef int Color32_t; //окончание _t для тайпдефов

void Func()
{
       ...
}
struct SSome;
class CSome;

//буковка t перед параметром, и T перед именем шаблона
template< class tType> void TFunc();

template< class tType>class TSome;

template< class tType>
class TSome: public TOther<tType>
{
public:
   typedef tType My_t;                   //мои параметр шаблона
   typedef TOther<tType> Parent_t;  //родитель
   ...
};
_Bers вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Используете ли вы расширенные возможности ПС? Alexei91 Свободное общение 29 16.08.2011 16:54
Какой браузер вы используете? Alexei91 Свободное общение 30 18.08.2010 09:47
Какие дополнения вы используете в Firefox Namolem Помощь студентам 2 19.03.2010 21:16
Какие компоненты используете для работы с firebird ? Alar БД в Delphi 3 15.10.2009 12:18