Вопросы по теме 'one-definition-rule'
Не могли бы вы объяснить эту проблему удаления C ++?
У меня такой код:
std::string F()
{
WideString ws = GetMyWideString();
std::string ret;
StringUtils::ConvertWideStringToUTF8(ws, ret);
return ret;
}
WideString - это сторонний класс, как и StringUtils. Для меня они черный ящик....
633 просмотров
schedule
08.09.2022
Получение компоновщика GCC для предупреждения о нескольких определениях функций
Рассмотрим мой небольшой пример библиотеки C:
#include <external_library.h>
void some_function(void)
{
external_library_call();
// Do other stuff...
}
Он планирует сделать функцию some_function() общедоступной. Однако...
983 просмотров
schedule
11.12.2023
Некоторые вопросы об ODR, декларации и определениях
Извините, если вопросы старые или немного глупые.
Я знаю основы объявления и определения, но, похоже, в C ++ есть много несоответствий или «исключений», которые делают его не гармоничным, по крайней мере, для меня. Или я что-то неправильно...
70 просмотров
schedule
18.10.2022
Отсутствуют ли в модулях C++ нарушения ODR?
В проекте модулей C++ N4720 [basic.def.odr]/6 говорится:
[…] Для объекта с экспортируемой декларацией должно быть только одно определение этого объекта; диагностика требуется только в том случае, если граф абстрактной семантики модуля...
318 просмотров
schedule
08.11.2022
Как вы определяете функции в заголовочных файлах?
Установка
Если у меня есть такая программа
Файл заголовка, который объявляет мою основную библиотечную функцию primary() и определяет короткую простую вспомогательную функцию helper() .
/* primary_header.h */
#ifndef _PRIMARY_HEADER_H...
3737 просмотров
schedule
11.02.2024
может ли компилятор, решивший не встраивать функцию, привести к нескольким определениям?
Я знаю, что компилятор может решить, следует ли встраивать функцию или нет. Допустим, кто-то определил функцию как inline в заголовочном файле, и тело функции также находится в заголовочном файле. Кроме того, допустим, что функция длинная, и...
46 просмотров
schedule
11.08.2022