Re[3]: Оформление кода: префикс 'p' перед указателями...
От: -=[x]=- Россия  
Дата: 17.01.03 08:55
Оценка:
Здравствуйте, Михаил Можаев, Вы писали:

ММ>Здравствуйте, -=[x]=-, Вы писали:


JD>>>железные аргументы ЗА префикс 'p':

JD>>>.... ???
=>>Знаешь, что это указатель

ММ>А если имя переменной начинается с буквы p? Можно, конечно, писать p_param...


CPen *pPen = new CPen();


По моему, выглядит неплохо
... << RSDN@Home 1.0 beta 3 >>
icq: 118852038
Re[4]: Оформление кода: префикс 'p' перед указателями...
От: Михаил Можаев Россия www.mozhay.chat.ru
Дата: 17.01.03 09:02
Оценка:
Здравствуйте, -=[x]=-, Вы писали:

ММ>>А если имя переменной начинается с буквы p? Можно, конечно, писать p_param...


=>
=>CPen *pPen = new CPen();
=>


=>По моему, выглядит неплохо

Вполне
А если эта переменнная — не указатель? Просто с большой буквы?
... << RSDN@Home 1.0 beta 4 >>
Re[5]: Оформление кода: префикс 'p' перед указателями...
От: -=[x]=- Россия  
Дата: 17.01.03 09:13
Оценка:
Здравствуйте, Михаил Можаев, Вы писали:

ММ>Здравствуйте, -=[x]=-, Вы писали:


ММ>>>А если имя переменной начинается с буквы p? Можно, конечно, писать p_param...


=>>
=>>CPen *pPen = new CPen();
=>>


=>>По моему, выглядит неплохо

ММ>Вполне

ММ>А если эта переменнная — не указатель? Просто с большой буквы?

имеешь в виду
ccode]
CPen *Pen = new CPen();
[/ccode]

Тоже неплохо выглядит.

Хотя у ребят из М$ в gdi+, по моему Pen — это класс. Получается небольшая проблема.
Если там писать.

ccode]
Pen *Pen = new Pen(...);
[/ccode]
не прокатит

ccode]
Pen *pPen = new Pen(...);
[/ccode]
вполне работоспособен
... << RSDN@Home 1.0 beta 3 >>
icq: 118852038
Re[6]: Оформление кода: префикс 'p' перед указателями...
От: Михаил Можаев Россия www.mozhay.chat.ru
Дата: 17.01.03 09:27
Оценка:
Здравствуйте, -=[x]=-, Вы писали:

=>имеешь в виду
=>ccode]
=>CPen *Pen = new CPen();
=>[/ccode]

Я имел в виду наоборот:
CPen Pen(PS_SOLID, 1, RGB(0, 0, 0));


Просто я обычно переменные с маленькой буквы пишу, чтобы не получалось:
for (int I=0; I<10; ++I)
    ...


Тогда получается
CPen pen(PS_SOLID, 1, RGB(0, 0, 0));


Это что — указатель на en ?
... << RSDN@Home 1.0 beta 4 >>
Re: Оформление кода: префикс 'p' перед указателями...
От: Gadsky Россия  
Дата: 17.01.03 09:33
Оценка:
Здравствуйте, Joker3D, Вы писали:



JD>Здравствуйте!


JD>Прошу вас высказать свои соображения по вопросу:

JD>"нужен ли префикс p перед переменными-указателями"
JD>(MS VC++ 7.0)

JD>понятно, что все пишут по-разному и тут нет и не может быть "правил", я просто прошу высказать


JD>железные аргументы ЗА префикс 'p':

JD>.... ???
1. С первого взгляда понятно, что это указатель.

JD>и железные аргументы ПРОТИВ префикса 'p':

JD>.... ???
1. Все равно одного взгляда мало, чтобы разобраться в логике работы программы. А если я взгляну на программу больше одного раза, для меня не будет проблемой запомнить, что "byaka" — это указатель, а "buka" — int
2. Это лишняя буква. А длина строки всегда ограничена.
3. Следствие 2. -> Лучше я добавлю букву, которая уточнит семантику переменной, потому что синтаксисом занимается по большей части компилятор, а его голова — железный.
Re[2]: Оформление кода: префикс 'p' перед указателями...
От: Awaken Украина  
Дата: 17.01.03 09:36
Оценка:
JD>>и железные аргументы ПРОТИВ префикса 'p':
JD>>.... ???

X>Некоторым трудно/медленно/лень писать лишние буквы (помните int a, int b, int c1?)


если используется pSome->Method() ясно что это указатель без всяких p
а вот если pSome.Method() это может быть что угодно например умный указатель
в одной из книжек я видел нотацию spSomething для smart pointers
Re[4]: Оформление кода: префикс 'p' перед указателями...
От: m.a.g. Мальта http://dottedmag.net/
Дата: 17.01.03 10:32
Оценка:
Здравствуйте, -=[x]=-, Вы писали:

=>
=>CPen *pPen = new CPen();
=>


=>По моему, выглядит неплохо

Странная ситуация — класс и объект называются одинаково. Заставляет задуматься, нет ли здесь ошибки в проектировании.
... << silent >> ...
Re[7]: Оформление кода: префикс 'p' перед указателями...
От: Stoune  
Дата: 18.01.03 02:43
Оценка:
Здравствуйте, Михаил Можаев, Вы писали:

ММ>Тогда получается

ММ>
ММ>CPen pen(PS_SOLID, 1, RGB(0, 0, 0));
ММ>


ММ>Это что — указатель на en ?


Тогда пиши p_pen, или ppen,или m_ppen, я предпочитаю префиксы типа m_ давать для переменных членов, для локальных префиксов нет, делее префик типа, допустим указатель на целое pn, ну а дальше название переменной с ЗАГЛАВНОЙ буквы.
CPen *pCPen; | CPen *pPen;
Class
{
public:
   CPen *m_pCPen;
private:
   int *m_pnCount;
}

А вообще, если для себя пишеш, то пиши как тебе удобнее, возникнут сложности сам выработаеш систему, или пойдёш в асфальтоукладчики , если терпения не хватит, а если на серйозную контору, так там заставят, или выгонят и возьмут более способного.
... << RSDN@Home 1.0 beta 4 >>
Re[7]: Оформление кода: префикс 'p' перед указателями...
От: WFrag США  
Дата: 18.01.03 06:16
Оценка:
Здравствуйте, Михаил Можаев, Вы писали:

ММ>Тогда получается

ММ>
ММ>CPen pen(PS_SOLID, 1, RGB(0, 0, 0));
ММ>


ММ>Это что — указатель на en ?

указатедь на en — это pEn
Re[7]: Оформление кода: префикс 'p' перед указателями...
От: -=[x]=- Россия  
Дата: 18.01.03 06:26
Оценка:
Здравствуйте, Михаил Можаев, Вы писали:

ММ>Тогда получается

ММ>
ММ>CPen pen(PS_SOLID, 1, RGB(0, 0, 0));
ММ>


ММ>Это что — указатель на en ?



префикс — с маленькой, имя — с большой:

CPen pen(...);
CPen *pEn=(...);
ММ>
... << RSDN@Home 1.0 beta 3 >>
icq: 118852038
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.