![]() |
|
![]() ![]() ![]() |
|
zabludshiy |
|
||||||||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 27.11.2012 Репутация: нет Всего: нет |
Задача:
1. объявить константу в созданном классе и сделать ее видимой для всех методов данного класса; 2. объявить массив, размер которого определяет созданная константа. Среда разработки Visual C++ 6.0 В итоге у меня получилось:
С инициализацией константы есть сомнения поэтому интересует, как все-таки правильно объявлять и инициализировать константу в создаваемом классе, чтобы потом ее можно было использовать в конструкторе и любом методе класса. По поводу массива тоже не понял, нужно ли его объявлять в MyClass.h, а инициализировать в MyClass.cpp или сразу объявить в описании конструктора MyClass.cpp? Если да, то как и где правильно объявить массив с размером, заданным константой в создаваемом классе? Если я объявляю массив в файле MyClass.cpp, не объявляя его в MyClass.h, а константы объявляю, как указано в примере в MyClass.h:
, а в MyClass.cpp:
компилятор ошибок не выдал, но правильно ли такое объявление? |
||||||||
|
|||||||||
volatile |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2107 Регистрация: 7.1.2011 Репутация: 4 Всего: 85 |
так низя. здесь у вас массив локальный, при выходе из конструктора он исчезнет. Нужно так: в .h
а в cpp ничо не нужно. в смысле ни константу ни массив в сипипи не надо прописывать. |
||||
|
|||||
volatile |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2107 Регистрация: 7.1.2011 Репутация: 4 Всего: 85 |
оу, сорри. В шестой кажется так низя было делать... Так с константами какие-то проблемы были вроде... (не помню точно). если что, тогда делайте так:
|
|||
|
||||
Dem_max |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1780 Регистрация: 12.4.2007 Репутация: 1 Всего: 39 |
Забудь про Visual C++ 6
-------------------- Американские программисты долго не могли понять, почему русские при зависании Windоws всё время повторяют "Твой зайка написал" ("Yоur bunnу wrоte") |
|||
|
||||
zabludshiy |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 27.11.2012 Репутация: нет Всего: нет |
volatile, подскажите пожалуйста, а при объявлении RANGE_VERH через перечисление
|
|||
|
||||
volatile |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2107 Регистрация: 7.1.2011 Репутация: 4 Всего: 85 |
RANGE_VERH будет виден во всех методах класса, как компайл-тайм константа; Вообще будет виден везде, где проинклуден .h Если его перенести в публичную область, то будет также доступен и вне класса, как MyClass::RANGE_VERH; |
|||
|
||||
zabludshiy |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 27.11.2012 Репутация: нет Всего: нет |
Спасибо за ответы
|
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |