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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
[progeR]
30 / 8 / 0
Регистрация: 20.08.2011
Сообщений: 603
#1

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

08.11.2016, 10:01. Просмотров 123. Ответов 3
Метки нет (Все метки)

Добрый день.
Известно, в C++ есть ключевое слово
Код
__attribute__
Вопрос: когда имеет смысл его использовать? Например, если у меня константный метод, то обязательно ли его помечать константным через атрибут, если он уже помечен как const? Или например функция чистая (функция возведения числа в степень), то нужно ли ее помечать как pure. Ну и так далее...

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

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

Наследование определенных атрибутов. - C++
Проектирую объектную модель и возникла такая ситуация:у базового класса есть атрибут необходимый для большинства производных классов,но...

Поиск файлов и определения и изменение их атрибутов в языке C ++ - C++
В каталоге с заданным именем есть файлы и подкаталоги. Найти первый файл, начало которого совпадает с заданной строкой символов. Защитить...

Выбор компилятора С++ - C++
Всем доброго времени суток.Такой вопрос:Какой компилятор или среду разработки взять для начала изучения С++? На Паскале писал,с Delphi...

Параметры компилятора - C++
Как узнать стандарт языка? те прописываю я в Си, в том числе, -std=c11 и использую функцию scanf_s() а компилятор ругается, мол "нет...

Баг компилятора? - C++
Набросал вот такой код: // <@r!er> <wtf> <26.05.2012> #include <iostream> #include <windows.h> using namespace...

Директивы компилятора - C++
Доброго времени суток! Меня интересует что за директивы, и где можно о них почитать. Почему именно эти директивы. Дело в том что...

настройка компилятора - C++
ребят как настроить компилятор чтобы работать с графикой ? вроде бы нужно чтото прописать в derectories ... помогите плиз (компилятор turbo...

Смена Компилятора - C++
Здравствуйте! :help: Начну с того, что программа работает в Visual Studio C++ 2008, но когда я пытаюсь ее переместить на другой...

Оптимизация у компилятора С++ - C++
Добрый день! Начал изучать С++ и случайно заглянул в дизассемблированный код. Лучше бы этого не делал! >8- 01352984 mov ...

Директивы компилятора - C++
Имеется такой код: #define MAT(m,r,c) (m) #define m11 MAT(m,0,0) #define m12 MAT(m,0,1) #define m13 MAT(m,0,2) #define m14...

Параметры компилятора С++ - C++
Здравствуйте. Изучаю программирование по книге Хортона. Встретил в 2-х местах понятие параметр компилятора, но как его менять не указано....

Ошибки компилятора - C++
Помогите исправить ошибки, возникшие пр переводе с С++ на С. #include <stdio.h> #include <string.h> #include <stdlib.h> struct...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Модератор
Эксперт CЭксперт С++
6946 / 4117 / 581
Регистрация: 29.11.2010
Сообщений: 10,916
08.11.2016, 11:37     Использование атрибутов компилятора #2
Цитата Сообщение от [progeR] Посмотреть сообщение
когда имеет смысл его использовать?
Когда начнете писать компиляторы.
Цитата Сообщение от [progeR] Посмотреть сообщение
обязательно ли его помечать константным через атрибут
Нет.
Цитата Сообщение от [progeR] Посмотреть сообщение
нужно ли ее помечать как pure.
Нет.
Цитата Сообщение от [progeR] Посмотреть сообщение
Ну и так далее...
Нет.

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

Так разве это преждевременная оптимизация?
Croessmah
Модератор
Эксперт CЭксперт С++
12979 / 7291 / 812
Регистрация: 27.09.2012
Сообщений: 18,007
Записей в блоге: 3
Завершенные тесты: 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     Использование атрибутов компилятора
Ответ Создать тему
Опции темы

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