Здравствуйте, Михаил Можаев, Вы писали:
ММ>Здравствуйте, -=[x]=-, Вы писали:
JD>>>железные аргументы ЗА префикс 'p': JD>>>.... ???
=>>Знаешь, что это указатель
ММ>А если имя переменной начинается с буквы p? Можно, конечно, писать p_param...
CPen *pPen = new CPen();
По моему, выглядит неплохо
... << RSDN@Home 1.0 beta 3 >>
icq: 118852038
Re[4]: Оформление кода: префикс 'p' перед указателями...
Здравствуйте, Михаил Можаев, Вы писали:
ММ>Здравствуйте, -=[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' перед указателями...
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' перед указателями...
JD>>и железные аргументы ПРОТИВ префикса 'p': JD>>.... ???
X>Некоторым трудно/медленно/лень писать лишние буквы (помните int a, int b, int c1?)
если используется pSome->Method() ясно что это указатель без всяких p
а вот если pSome.Method() это может быть что угодно например умный указатель
в одной из книжек я видел нотацию spSomething для smart pointers
Re[4]: Оформление кода: префикс 'p' перед указателями...
Здравствуйте, Михаил Можаев, Вы писали:
ММ>Тогда получается ММ>
ММ>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' перед указателями...