C++ & Hungarian Notation

Vovka
Уже с Приветом
Posts: 1906
Joined: 14 Mar 2001 10:01

C++ & Hungarian Notation

Post by Vovka »

Do Microsoft still recommend using Hungarian notation in C++ code?
Could you please provide me with links to authoritative opinions and arguments against using it? Links to microsoft.com domain are especially welcome.
User avatar
Veselchak U
Уже с Приветом
Posts: 1787
Joined: 27 Nov 2002 05:24
Location: Sevastopol --> Ft. Lauderdale-->Boston-->Chicago

Post by Veselchak U »

Does MS, not Do MS...
User avatar
Veselchak U
Уже с Приветом
Posts: 1787
Joined: 27 Nov 2002 05:24
Location: Sevastopol --> Ft. Lauderdale-->Boston-->Chicago

Post by Veselchak U »

Лениво ткнул в Гугл и нашел это:

http://www.microsoft.com/usa/presentations/devt1-47.ppt

Hungarian notation is out!
For public interfaces, use PascalCasing
For private members, use camelCasing
Use underscore “_” character to denote private class members
Use camelCasing for all method parameters
User avatar
A. Fig Lee
Уже с Приветом
Posts: 12072
Joined: 17 Nov 2002 03:41
Location: английская колония

Post by A. Fig Lee »

Veselchak U wrote:Лениво ткнул в Гугл и нашел это:

http://www.microsoft.com/usa/presentations/devt1-47.ppt

Hungarian notation is out!
For public interfaces, use PascalCasing
For private members, use camelCasing
Use underscore “_” character to denote private class members
Use camelCasing for all method parameters


Good.
Теперь везде только ее буду пользовать! :mrgreen: :umnik1:
Верить нельзя никому - даже себе. Мне - можно!
User avatar
Veselchak U
Уже с Приветом
Posts: 1787
Joined: 27 Nov 2002 05:24
Location: Sevastopol --> Ft. Lauderdale-->Boston-->Chicago

Post by Veselchak U »

Это назло МС-ту? :mrgreen:
Vovka
Уже с Приветом
Posts: 1906
Joined: 14 Mar 2001 10:01

Post by Vovka »

Veselchak U wrote:Does MS, not Do MS...

Well, I thought that you can use nouns like "company", "government", etc. in plural.

Veselchak U wrote:Лениво ткнул в Гугл и нашел это:

http://www.microsoft.com/usa/presentations/devt1-47.ppt

It's about C# and .NET - I need something about C++ and Win32.
But thanks anyway.
User avatar
A. Fig Lee
Уже с Приветом
Posts: 12072
Joined: 17 Nov 2002 03:41
Location: английская колония

Post by A. Fig Lee »

Veselchak U wrote:Это назло МС-ту? :mrgreen:


:radio%: :gen1:

Привычка ... :oops:
Верить нельзя никому - даже себе. Мне - можно!
User avatar
Veselchak U
Уже с Приветом
Posts: 1787
Joined: 27 Nov 2002 05:24
Location: Sevastopol --> Ft. Lauderdale-->Boston-->Chicago

Post by Veselchak U »

Vovka wrote:
Veselchak U wrote:Does MS, not Do MS...

Well, I thought that you can use nouns like "company", "government", etc. in plural.


Yes, you can if you want to emphasize the individuals making up the company. In your case, you were looking for directions from MS as a single unit. Kind of a "party line." In this case, the singular usage is more appropriate.

Source: The Gregg Reference Manual.
User avatar
Veselchak U
Уже с Приветом
Posts: 1787
Joined: 27 Nov 2002 05:24
Location: Sevastopol --> Ft. Lauderdale-->Boston-->Chicago

Post by Veselchak U »

In recent header files from MS I still see hungarian notation being used in win32 code. I guess it'll stay in straight win32 code for continuity reasons.
blanko27
Уже с Приветом
Posts: 2264
Joined: 17 Jun 2003 04:41
Location: Just like US

Post by blanko27 »

Вовка, меня товарищи в соседнем топике отправили в Гугл с волшебной фразои "C++ coding standard", после применения которой он выдал мне около полутора тысяч линков. Т.к. я был слегка ограничен во времени, то обошел не более 70-ти, и могу сделать небольшое обобщение увиденного: все стандарты подпадали под 2 группы:
1. Народное творчество индивидуумов;
2. Внутренние корпоративные стандарты (MS и т.д.)
Определенных доводов за/против применения определенного стандарта я не обнаружил. Т.е. в каждом из них было не больше смысла, чем в преславутой Венгерской нотации.
Обсудив ситуацию с коллегами (а как же :) ), мы пришли к выводу, что применение нотации имеет смысл только в рамках определенного проекта, т.е. не стоит применять несколько нотаций в рамках одного и того же проекта. Еще в применении той или иной нотации имеет значение понятие моды. Если MS начал применять "верблюжью" нотацию (camelCasing :) )* - то, по-видимому, она найдет много последователей.

*Примечание: camel рифмуется с их XAML
...а мы такой компанией, возьмем, да и припремся к Элис!
User avatar
constm
Уже с Приветом
Posts: 119
Joined: 17 Apr 2001 09:01
Location: moscow.ru

Post by constm »

можно сравнить статью Simonyi и исходники ATL/WTL/MFC
особого следования не наблюдается..
User avatar
Mic
Уже с Приветом
Posts: 6906
Joined: 20 Apr 1999 09:01
Location: Seattle

Post by Mic »

blanko27 прав, в дополнение - я бы применял (применяю) то, что вошло в общеупотребительное - венгерскую в С++, camel в С#

Return to “Вопросы и новости IT”