Russian Qt Forum
Апрель 24, 2024, 07:16 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: static inline ???  (Прочитано 4419 раз)
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« : Март 12, 2019, 13:21 »

Добрый день

Всегда полагал что если в .сpp объявил ф-цию inline, то static ни к чему. Но вот линкер не находит такие inline. Дописываю static - все нормуль. Это что за мода такая пошла? Правда статик либа (cpp файл) на icc (где в лесах много диких обезьян) а приложение на шланге. Не подскажете что где вкл/выкл (у обоих компиляторов опций море)?

Спасибо
  
« Последнее редактирование: Март 12, 2019, 13:23 от Igors » Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3258


Просмотр профиля
« Ответ #1 : Март 13, 2019, 00:05 »

inline говорит что неплохо бы эту функцию заинлайнить в место вызова
static говорит что функция не видна за пределами этого юнита трансляции (цпп файла)
это как бы ортогональные вещи как класс и функция как конст и волатайл как мухи и котлеты. ну вы поняли в опщем.

зы: а как вы пытаетесь экспортировать статик/инлайн функцию и зачем?
Записан
kai666_73
Крякер
****
Offline Offline

Сообщений: 319


Просмотр профиля
« Ответ #2 : Март 13, 2019, 11:10 »

у статик метода (метод класса) несколько иное предназначение )
Записан
ViTech
Гипер активный житель
*****
Offline Offline

Сообщений: 858



Просмотр профиля
« Ответ #3 : Март 13, 2019, 11:33 »

Не подскажете что где вкл/выкл (у обоих компиляторов опций море)?

Такая опция могла бы помочь: -ffuck-off-and-just-compile.
Записан

Пока сам не сделаешь...
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #4 : Март 13, 2019, 13:42 »

у статик метода (метод класса) несколько иное предназначение )
Про методы класса разговора не было

зы: а как вы пытаетесь экспортировать статик/инлайн функцию и зачем?
Да ничего я не пытаюсь, просто нужен "местный" inline, только в этом файле, ну вот я его там и написал, в хедер выносить не стал

Записан
_Bers
Бывалый
*****
Offline Offline

Сообщений: 486


Просмотр профиля
« Ответ #5 : Март 13, 2019, 13:53 »


Код:
#include <main/project.h>   // <--- подтаскиваем основной стафф

// --- собственность ед. трансляции.
// --- снаружи никто никак не сможет получить доступ
// --- ключевые слова static или inline не нужны.
namespace {

    void foo() {... }

}//namespace

// основной код
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 22.