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

Использование атрибутов компилятора - C++

Восстановить пароль Регистрация
 
[progeR]
6 / 7 / 0
Регистрация: 20.08.2011
Сообщений: 589
08.11.2016, 10:01     Использование атрибутов компилятора #1
Добрый день.
Известно, в C++ есть ключевое слово
Код
__attribute__
Вопрос: когда имеет смысл его использовать? Например, если у меня константный метод, то обязательно ли его помечать константным через атрибут, если он уже помечен как const? Или например функция чистая (функция возведения числа в степень), то нужно ли ее помечать как pure. Ну и так далее...

Компилятор GCC/MinGW.

Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.11.2016, 10:01     Использование атрибутов компилятора
Посмотрите здесь:

C++ Смена Компилятора
Баг компилятора???????? C++
Наследование определенных атрибутов. C++
C++ ошибка компилятора
Баг компилятора? C++
C++ Ошибка компилятора
C++ Выбор компилятора С++
C++ Поиск файлов и определения и изменение их атрибутов в языке C ++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,420
08.11.2016, 11:37     Использование атрибутов компилятора #2
Цитата Сообщение от [progeR] Посмотреть сообщение
когда имеет смысл его использовать?
Когда начнете писать компиляторы.
Цитата Сообщение от [progeR] Посмотреть сообщение
обязательно ли его помечать константным через атрибут
Нет.
Цитата Сообщение от [progeR] Посмотреть сообщение
нужно ли ее помечать как pure.
Нет.
Цитата Сообщение от [progeR] Посмотреть сообщение
Ну и так далее...
Нет.

Компилятор итак разберётся что ему делать, не мешайте ему в этом своими догадками.
И не стоит забывать, что "Premature optimization is the root of all evil".
[progeR]
6 / 7 / 0
Регистрация: 20.08.2011
Сообщений: 589
09.11.2016, 09:06  [ТС]     Использование атрибутов компилятора #3
Цитата Сообщение от MrGluck Посмотреть сообщение
Когда начнете писать компиляторы.
Не понял вашу мысль.

Так разве это преждевременная оптимизация?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11832 / 6811 / 769
Регистрация: 27.09.2012
Сообщений: 16,887
Записей в блоге: 2
Завершенные тесты: 1
09.11.2016, 10:18     Использование атрибутов компилятора #4
Цитата Сообщение от [progeR] Посмотреть сообщение
в C++ есть ключевое слово
В C++?

Цитата Сообщение от [progeR] Посмотреть сообщение
Вопрос: когда имеет смысл его использовать?
Например (unsafe):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
 
struct X {
    char x;
    char y;
    int z;
};
 
 
 
struct __attribute__((packed)) Y {
    char x;
    char y;
    int z;
};
 
 
int main()
{
    std::cout << sizeof(X) << std::endl;
    std::cout << sizeof(Y) << std::endl;
}
http://rextester.com/VUYLQ35965
Yandex
Объявления
09.11.2016, 10:18     Использование атрибутов компилятора
Ответ Создать тему
Опции темы

Текущее время: 14:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru