С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 18.07.2015
Сообщений: 76

Static const в dll

17.02.2019, 23:09. Показов 1688. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Встретил в библиотек такое:
Color.hpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class SFML_GRAPHICS_API Color
{
public:
...
static const Color Black;       ///< Black predefined color
    static const Color White;       ///< White predefined color
    static const Color Red;         ///< Red predefined color
    static const Color Green;       ///< Green predefined color
    static const Color Blue;        ///< Blue predefined color
    static const Color Yellow;      ///< Yellow predefined color
    static const Color Magenta;     ///< Magenta predefined color
    static const Color Cyan;        ///< Cyan predefined color
    static const Color Transparent; ///< Transparent (black) predefined color
...
}
Color.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
...
const Color Color::Black(0, 0, 0);
const Color Color::White(255, 255, 255);
const Color Color::Red(255, 0, 0);
const Color Color::Green(0, 255, 0);
const Color Color::Blue(0, 0, 255);
const Color Color::Yellow(255, 255, 0);
const Color Color::Magenta(255, 0, 255);
const Color Color::Cyan(0, 255, 255);
const Color Color::Transparent(0, 0, 0, 0);
...
Когда попытался реализовать это в своей программе получил ошибки: "определение dllimport статические данные-член не разрешенно" и "не удается определить сущьность dllimport"
Console.h
C++
1
2
3
4
5
6
class SF_ST_EXPORT ConsoleColor
{
...
static const ConsoleColor Default;
...
}
Console.cpp
C++
1
2
3
...
const ConsoleColor ConsoleColor::Default(Color::White, Color::Transparent);
...
Что я делаю не так?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.02.2019, 23:09
Ответы с готовыми решениями:

static const?
если мне нужна константа в классе, как ее лучше объявить со static или без? разница будет только в том, что со статиком мне можно будет...

static const
объясните, пожалуйста, вот такую странную конструкцию (накопал в старой проге): после #include идет следующее: static const char...

static и const
static void A(); Что дает этот статик? Что он вообще дает? int A() const; Что дает конст в данном случае? static int...

2
Мозгоправ
 Аватар для L0M
1745 / 1039 / 468
Регистрация: 01.10.2018
Сообщений: 2,138
Записей в блоге: 2
18.02.2019, 11:53
Посмотрите дефайн, где определяется символ SFML_GRAPHICS_API. Как он определяется и при каком условии. Посмотрите C/C++ / Preprocessor Definitions в свойствах проекта SFML.
Сделайте у себя по аналогии.
0
0 / 0 / 0
Регистрация: 18.07.2015
Сообщений: 76
18.02.2019, 15:32  [ТС]
C++
1
2
3
4
5
6
7
8
9
#if defined(SFML_GRAPHICS_EXPORTS)
 
    #define SFML_GRAPHICS_API SFML_API_EXPORT
 
#else
 
    #define SFML_GRAPHICS_API SFML_API_IMPORT
 
#endif
C++
1
2
3
4
5
6
7
8
9
10
// Windows compilers need specific (and different) keywords for export and import
        #define SFML_API_EXPORT __declspec(dllexport)
        #define SFML_API_IMPORT __declspec(dllimport)
 
        // For Visual C++ compilers, we also need to turn off this annoying C4251 warning
        #ifdef _MSC_VER
 
            #pragma warning(disable: 4251)
 
        #endif
Добавлено через 1 час 49 минут
Проблема была в макросе:
C++
1
2
3
4
5
#ifdef DLLTEXT_EXPORTS
#define IMPORT_EXPORT __declspec(dllexport)
#else
#define IMPORT_EXPORT __declspec(dllimport)
#endif
В определениях препроцессора не было DLLTEXT_EXPORTS, из-за чего при сборке dll использовалось __declspec(dllimport) вместо __declspec(dllexport).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.02.2019, 15:32
Помогаю со студенческими работами здесь

const static vector<type>
Мне нужно создать внутри класса вектор цветов предлагаемых в конструкторе как дефолтные... лучше static, лучше const... главное - чтобы...

Запись в static const char[]
У меня есть строка, содержащая некий текст. std::string ex_text = &quot;&lt;h1&gt;TextTextText&lt;/h1&gt;&quot;; Также у меня есть переменная, которая должна...

#define PI or static const float PI
Что лучьше обьясните? #define PI 3,14159265 или static const float PI=3,14159265;

Что такое static const и для чего он нужен?
Что такое static const ? И для чего он нужен ?

Error: only static const integral data members can be initialized within a class
Здравствуйте, помогите исправить ошибку 1. error C2864: 'Station::stdOut' : only static const integral data members can be initialized...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru