Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
30 / 47 / 19
Регистрация: 23.10.2014
Сообщений: 1,001
1

Как правильно объявлять статические константные объекты в классе?

05.11.2016, 08:58. Показов 555. Ответов 1
Метки нет (Все метки)

В классе надо объявить статичные константные строки. Типа
C++
1
2
3
4
5
class A
{
public:
    static const std::string OLOLO = "ololo";
}
Но так никак не выходит. Пишет ошибку "a static data member with an in-class initializer must have non-volatile const integral type". Пытался и constexpr добавить, не помогает... Как быть? Причем желательно все таки чтоб там был именно объект, а не просто const char * (так кстати тоже не выходит).
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.11.2016, 08:58
Ответы с готовыми решениями:

Константные статические объекты класса.
Здравствуйте. Есть класс "матрица" нужно задать константные матрицы такие как E - единичная матрица...

Как правильно объявлять и использовать статические переменные в Lazarus
Эта тема уже обсуждалась применительно к Delphi...

Где правильно объявлять и инициализировать объекты/ MFC
Добрый день. Допустим у меня есть два обработчика событий (две функции). Обе функции используют...

Используя статические объекты и статические методы, разработать программу движения по экрану прямой линии
Используя статические объекты и статические методы, разработать программу движения по экрану...

1
2723 / 1887 / 559
Регистрация: 05.06.2014
Сообщений: 5,499
05.11.2016, 09:05 2
В классе - static const std::string OLOLO;
Потом, в каком ни будь cpp файле const std::string A::OLOLO = "ololo";

Добавлено через 1 минуту
Цитата Сообщение от Dark Byte Посмотреть сообщение
а не просто const char * (так кстати тоже не выходит).
C++
1
2
3
4
struct test
{
    static constexpr const char*str="test";
};
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.11.2016, 09:05

Используя статические объекты и статические методы, разработать программу движения по экрану прямой линии и квадрата.
Помогите, в решении задач, пожалуйста! 1. Используя статические объекты и статические методы,...

Константные объекты
#include <iostream> #include <windows.h> using namespace std; class CTest { public: int...

Указатели на константные объекты
Нельзя создать неконстантный указатель на константный объект по понятным причинам, но имеем такой...

Константные методы и объекты класса
Это необходимость, или явная подстраховка того, что бы объект (константный) работал с себе...

Как правильно объявлять массивы
У меня вопрос: Я видел объявления массивов, где в скобках писались нолики и еденицы В теме про...

Как правильно объявлять классы
Предположим, есть класс .box, который будет использоваться только в div-ах. Как вы его объявите в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.