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

Инициализация константного статического объекта - члена класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Генерация трех случайных массивов http://www.cyberforum.ru/cpp-beginners/thread813891.html
Добрый вечер! У меня вот такая задачка: сгенерировать три случайных массива размером в 100 элементов, вывести их на экран и в текстовый файл,обнулить массивы в памяти, вывести их на экран, считать из текстового файла записанные ранее массивы,произвести их сортировку тремя разными способами Ну с сортировками попробую как нибудь сама разобраться, а вот начать с чего-то надо!Помогите,...
C++ Ошибка в программе Помогите разобраться с программой где ошибка. Использовать рекурсию. За ранее спасибо. #include<iostream.h> float tn(float, int); int main() { http://www.cyberforum.ru/cpp-beginners/thread813884.html
C++ Как получить dns записи
например нужно получить mx записи чтобы отправить почту по smtp, есть ли кроссбраузерное решение и где почитать можно?
C++ Vector
Доброго времени суток!:) У меня возник такой вопрос, допустим, имеется следующий код: #include <iostream> #include <vector> using namespace std; int _tmain() { int mas = {1,2,3,4,5}; vector<int> l(mas, mas + sizeof(mas) / sizeof(mas));
C++ Программа, которая считает сумму продаж за год. SalePerson http://www.cyberforum.ru/cpp-beginners/thread813859.html
Класс SalePerson содержит: следующие закрытые компоненты – данные: - массив вещественных чисел sales, в которых хранятся продажи продавца за год; - две символьных строки, в которых хранятся фамилия и имя продавца; следующие методы: - функция утилит, которая считает и возвращает сумму продаж; - перегруженный метод set_sales(), первый метод обнуляет данные массива, а второй получает...
C++ Нужно написать программу на С/С++ (дано слово. определить сколько в нем различных букв), есть алгоритм дано слово. определить сколько в нем различных букв вот мой алгоритм: 1) Отсортировать все буквы в слове 2) Пройти по всем буквам и если текущая буква отличается от предыдущей, то увеличить счетчик на 1 3) Счетчик будет содержать нужное число пример: kukuruza - 5 различных букв подробнее

Показать сообщение отдельно
ElwooD07
0 / 1 / 1
Регистрация: 01.02.2012
Сообщений: 16

Инициализация константного статического объекта - члена класса - C++

20.03.2013, 18:40. Просмотров 915. Ответов 2
Метки (Все метки)

Здравствуйте, у меня возникла проблема с инициализацией статического объекта, который является членом класса. Этот объект должен быть private-членом класса, и не должен быть изменен никаким образом. Это объект заранее созданного исключения, я подумал что практичнее будет единожды его создать и бросать один и тот же объект всегда, когда он будет нужен, вместо того, чтобы создавать новый.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
namespace Triangle
{
 
// класс исключения
class triangle_exception: public std::exception
{
public:
    triangle_exception(const char *message = "Triangle exception"): exception(message) { }
};
 
// Класс, в котором используется исключение
class triangle
{
    double a, b, c;
    static const triangle_exception wrong_sides_ex; // Статический константный объект исключения (у меня это строка 24)
//...
};
triangle_exception triangle::wrong_sides_ex("Wrong values of sides lengths"); // Ошибка: объявление не совместимо c const Triangle::triangle_exception Triangle::triangle::wrong_sides_ex (объявлено в строке 24).
 
}
Меня смущает сообщение о том, что объект уже определен, и, вроде бы, компиллятор жалуется на то, что я второй раз его определяю. Но как тогда мне его инициализировать? Пробовал инициализировать внутри класса, но там можно инициализировать только целочисленные типы. Подскажите пожалуйста, как мне с этим справиться. Буду рад за развернутый ответ
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru