Вопросы по теме 'cpp-core-guidelines'
Есть ли законный способ перейти с gsl::not_null‹T›?
Библиотека поддержки рекомендаций представила not_null<T> , целью которого является применение инварианта к типам, подобным указателям, преднамеренно к умным указателям. . Однако известно , что not_null<unique_ptr<T>> не...
594 просмотров
schedule
28.01.2023
Перегрузки gsl::span‹T› и gsl::span‹const T› неоднозначны
Основные рекомендации C++ продвигает практику используя span .
Проблема заключается в константных и изменяемых диапазонах. Вот что я пытался сделать:
auto foo(gsl::span<int>); // 1st
auto foo(gsl::span<const int>);...
2498 просмотров
schedule
22.10.2022
Значение интерфейсов f(T*, int) и интерфейсов f(span‹T›) в основных рекомендациях cpp
Раздел P3 из основные принципы cpp предлагают следующий шаблон в разделе принудительного исполнения:
Интерфейсы f(T*, int) и интерфейсы f(span)
Может ли кто-нибудь объяснить, что это значит для сварливого старого программиста на C,...
150 просмотров
schedule
05.04.2023
Не используйте индекс массива, если индекс не является целочисленным константным выражением; используйте вместо этого gsl :: at ()
Я пытался создать пример кода в Microsoft Visual Studio, который выглядит так
int main()
{
const size_t size = 10;
int arr[size];
for (size_t i = 0; i < size; ++i)
arr[i] = i;
return 0;
}
Теперь JetBrains...
3138 просмотров
schedule
12.05.2022
C++: попытка устранить необработанный цикл с помощью эквивалентного алгоритма STL
Я пытаюсь модернизировать некоторый код C++, придерживаясь основных рекомендаций и публикуя рекомендации ++11. Конкретное руководство, к которому я обращаюсь здесь, состоит в том, чтобы использовать <algorithm> средства вместо необработанных...
227 просмотров
schedule
18.04.2023
Неиспользуемое пространство в макете в основных рекомендациях CPP
Я читал Основные принципы CPP , P.9: Не тратьте время и место :
Пример, плохой:
struct X {
char ch;
int i;
string s;
char ch2;
X& operator=(const X& a);
X(const X&);
};
Затем в нем говорится:...
79 просмотров
schedule
16.02.2023
Как может созданный компилятором конструктор по умолчанию быть более эффективным, чем самописный конструктор, который ничего не делает, кроме инициализации членов?
Инициировано этим ответом , который я читал в основные рекомендации :
C.45. Не определяйте конструктор по умолчанию, который только инициализирует элементы данных; вместо этого используйте инициализаторы членов класса
Приведенное...
479 просмотров
schedule
08.10.2022
Как обрабатывать предупреждение статического анализа от средства проверки основных рекомендаций о gsl::at?
Я активировал статический анализ для своего проекта в Visual Studio. Средство проверки основных рекомендаций говорит, что я должен использовать gsl::at для подписки. Но мой код сохраняется. Какой самый чистый способ избавиться от этого...
69 просмотров
schedule
23.06.2023