Форум программистов, компьютерный форум CyberForum.ru

Конструктор класса, содержащего только статические члены - C++

Восстановить пароль Регистрация
Другие темы раздела
C# DateTimePicker управление временем http://www.cyberforum.ru/cpp-beginners/thread343990.html
здравствуйте мне нужно чтобы в datetimepicker нельзя было выбрать прошедшею дату то есть сегоднешную и последующую можно а вчерашнюю нет (с месяцем и годом включительно) вот код но он ре работает private void dateTimePicker1_ValueChanged(object sender, EventArgs e) { if (DateTime.Now.Day > dateTimePicker1.Value.Day && DateTime.Now.Month == dateTimePicker1.Value.Month ||...
C++ Сигналы в windows Как генерировать сигналы в среде windows? Информация по сигналам в линуксе гуглится, а вот для windows не найду. Ну кроме того что SIGINT это ctrl+c. А как сгенерировать SIGABRT и SIGTERM например? Моя программа-набросок: #include <iostream> #include <csignal> #include <windows.h> using namespace std; void sigintHandler(int x) http://www.cyberforum.ru/cpp-beginners/thread343986.html
C++ Диаграмма классов в visual studia по готовому проекту
Интересует новый функционал и как им воспользоваться для того чтобы в пару кликов посроить uml диаграмму классов
Подскажите компилятор C++ на Linux C++
Чтобы поддерживал библиотеку <windows.h> Кажется так она пишется.... Просто GEANY не поддерживает WinAPI.....а хочется написать какое-то приложение)) Подскажите?)
C++ Лишние байты http://www.cyberforum.ru/cpp-beginners/thread343975.html
Не могу разобраться((( Терминал отправляет в порт левый массив как так?????? Вот код! //глобальные переменные unsigned char rx_buf, tx_buf; unsigned char m_speed; unsigned char m_buf; //--------------------------------------------------------------------------------------------------- class MyThread:public TThread
C++ Пространство имен в многофайловной программе Всем привет! Yashman, у которого часто что-то не получается снова в сети с новой проблеммой! :) Вот написал программу, а она не запускается, компиль выдает ошибки: Заголовочный файл: //файл attach.h namespace SALES { const int QUARTERS = 4; struct Sales { double sales; подробнее

Показать сообщение отдельно
Сыроежка
Заблокирован
22.08.2011, 16:32     Конструктор класса, содержащего только статические члены
В 12.41 речь идет о статическом члене foo класса bar. Его, как я понял, предлагается инициализировать в классе bar. То есть на самом деле статический член инициализируется при его определении, но тем не менее в конструкторе bar можно задать новое значение этого члена класса.

То есть имеет место быть 1)

C++
1
foo bar::s_foo_val( 0 );
это инициализация статического члена при его определении.

2) Можно задать новое значение в конструкторе bar для этого статического члена класса. Как это сделать? Статические члены класса не инициализируются в списке инициализации конструктора, так как они не связаны с объектом. Поэтому их инициализировать нужно в самом теле конструктора.

Поэтому вы могли бы написать следующий конструторк для bar

C++
1
2
3
4
bar::bar()
{
   s_foo_val = 10;
}
То есть в данном случае используется оператор присваивания, который для вас создал сам компилятор по умолчанию.

Теперь отвечаю на ваши вопросы.
1. Каким должен быть конструктор bar? Я это уже указал.
2. Да, если вы сами не определили конструктор, то компилятор создает конструктор по умолчанию, который имеет спецификации inline и public.
3. Как я уже указал, статические члены класса инициализируются при их определении. Но если вы желаете изменить их значение при создании объекта, то вы можете сделать так, как я показал на примере конструктора bar.
 
Текущее время: 10:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru