Size: a a a

2021 March 01

VS

Vlad Serebrennikov in supapro.cxx
Nastya Medveda
тут ведь должна быть какая-то логика, согласно которой я не могу сделать переменную unsigned employee_count
предлагаю такую: для чисел нужно использовать только знаковые типы, а для того, где число — это лишь представление, можно и беззнаковые.

например, для каких-нибудь данных вроде текста: операция сложения байта из строки с числом лишена смысла в общем случае, поэтому число здесь лишь представление
источник

SS

Sergey Skvortsov in supapro.cxx
Nastya Medveda
да, но я не могу эту переменную использовать в расчетах и быть уверенной, что в случайном месте итоговый результат не приведется к unsigned
Если такие расчеты бывают - кастуем в знаковый
Но их не так много, на самом деле
источник

NM

Nastya Medveda in supapro.cxx
Спасибо. Использовать знаковые константы вообще во всех расчетах.
источник

AF

Aidar Fattakhov in supapro.cxx
Nastya Medveda
Как безопасно использовать unsigned, когда они делают вот так?
#include <iostream>
int main(int argc, const char * argv[]) {
   unsigned  apples {15};
   short signed oranges {13};
   std::cout << oranges - apples   << std::endl;
   return 0;
}
///output: 4294967294
Так все просто: включи варн
источник

VS

Vlad Serebrennikov in supapro.cxx
-Wconversion
источник

NM

Nastya Medveda in supapro.cxx
Vlad Serebrennikov
-Wconversion
Спасибо, а какие еще warning включить, чтоб оно прекдупреждало о вообще всех странных местах в коде?
источник

SS

Sergey Sobolev in supapro.cxx
Nastya Medveda
Спасибо, а какие еще warning включить, чтоб оно прекдупреждало о вообще всех странных местах в коде?
-Wall -Wextra
источник

AF

Aidar Fattakhov in supapro.cxx
Nastya Medveda
Спасибо, а какие еще warning включить, чтоб оно прекдупреждало о вообще всех странных местах в коде?
Wall Wextra Wshadow
источник

AF

Aidar Fattakhov in supapro.cxx
И -pedantic-errors
источник

AF

Aidar Fattakhov in supapro.cxx
источник

NM

Nastya Medveda in supapro.cxx
на маке, вроде clang. не уверена что там такое работает
источник

NM

Nastya Medveda in supapro.cxx
Но спасибо. Сейчас попробую включать все предупреждения. Надеюсь, это поможет.
источник

AF

Aidar Fattakhov in supapro.cxx
Вы шланге есть Weverything
источник

AF

Aidar Fattakhov in supapro.cxx
А в гцц есть Weff-c++
источник

VS

Vlad Serebrennikov in supapro.cxx
Nastya Medveda
Спасибо, а какие еще warning включить, чтоб оно прекдупреждало о вообще всех странных местах в коде?
года полтора назад проштудировал все диагностики clang, и вот какие выбрал для того проекта, на котором тогда работал
https://pastebin.com/BdX8r6jB
https://clang.llvm.org/docs/DiagnosticsReference.html
источник

NM

Nastya Medveda in supapro.cxx
Vlad Serebrennikov
года полтора назад проштудировал все диагностики clang, и вот какие выбрал для того проекта, на котором тогда работал
https://pastebin.com/BdX8r6jB
https://clang.llvm.org/docs/DiagnosticsReference.html
Спасибо. Сохранила в закладках. надо будет разобраться как это все включить в xcode
источник

Ж

Женя in supapro.cxx
подскажите, если я создаю пространство имен в одном из файлов проекта, оно станет доступным и в других файлах, надо только написать в них using namespace (имя пространства из другого файла)?
источник

Ж

Женя in supapro.cxx
например в каком-то файле проекта
namespace ABC{
int n;
}
а в main просто пишу
using namespace ABC;
источник

C

CodeDetector in supapro.cxx
Женя
например в каком-то файле проекта
namespace ABC{
int n;
}
а в main просто пишу
using namespace ABC;
Оберните код в теги: 3 символа ` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!
источник

ID

In Dev in supapro.cxx
Женя
подскажите, если я создаю пространство имен в одном из файлов проекта, оно станет доступным и в других файлах, надо только написать в них using namespace (имя пространства из другого файла)?
Только для подключенных через #include
источник