Size: a a a

2021 February 22

MK

Mikhail Kornaukhov in supapro.cxx
d7d1cd
Вот в таком коде компиль нашел сравнение знакого и беззнакового:

std::vector<unsigned char> data;
...
if (data[0] != data.size()) { ... }

Почему он негодует? data[0] - беззнаковое, метод size тоже беззнаковое возвращает...
источник

S

Salt in supapro.cxx
Есть byte strings, multibyte strings и wide strings. char8_t к чему относится?
источник

NM

Nastya Medveda in supapro.cxx
Добрый день, можно ли указывать  using namespace std   вне  main.cpp, например в  заголовочных файлах классов или это плохая идея?
источник

FS

Flower Surgeon in supapro.cxx
Плохая.
источник

NM

Nastya Medveda in supapro.cxx
спасибо, еще у меня iostream в нескольких заголовочных файлах включен, нужно ли препроцессором проверять  #ifndef или нет? Я не очень понимаю  С++ эту библиотеку столько раз в код включит сколько строк #include с ней найдет или все норм?
источник

C

Chuvi in supapro.cxx
Nastya Medveda
Добрый день, можно ли указывать  using namespace std   вне  main.cpp, например в  заголовочных файлах классов или это плохая идея?
если кто-то когда-то будет использовать твои заголовки с using namespace - ты узнаешь про себя много нового
источник

SD

Sergey Dubovik in supapro.cxx
Думаю, внутри iostream есть проверка препроцессора. Другое дело, что зачем в .h файле может понадобится iostream? Нужно пересмотреть структуру кода
источник

NM

Nastya Medveda in supapro.cxx
надеюсь, что мой хелловорлд проект никто не будет использовать, но хорошие практики программирования все такое — лучше сразу писать нормально
источник

NM

Nastya Medveda in supapro.cxx
Sergey Dubovik
Думаю, внутри iostream есть проверка препроцессора. Другое дело, что зачем в .h файле может понадобится iostream? Нужно пересмотреть структуру кода
потому что там есть string,  а в cpp файле std::cout. так что чтоб два раза не вставать сразу включила iostream
источник

S

Stepan in supapro.cxx
Nastya Medveda
Добрый день, можно ли указывать  using namespace std   вне  main.cpp, например в  заголовочных файлах классов или это плохая идея?
Может привести к коллизии имён, поэтому лучше избегать исп-я
источник

NM

Nastya Medveda in supapro.cxx
с этими  std::string с++ похож по многословности на яву.
источник

S

Stepan in supapro.cxx
Nastya Medveda
надеюсь, что мой хелловорлд проект никто не будет использовать, но хорошие практики программирования все такое — лучше сразу писать нормально
Сразу и хорошо невозможно в любом деле, особенно в начале
источник

NM

Nastya Medveda in supapro.cxx
Sergey Dubovik
Думаю, внутри iostream есть проверка препроцессора. Другое дело, что зачем в .h файле может понадобится iostream? Нужно пересмотреть структуру кода
Видимо, в моих самописанных h  файлах такой проверки нет. ну да ладно — память сейчас дешевая.
источник

S

Stepan in supapro.cxx
Nastya Medveda
спасибо, еще у меня iostream в нескольких заголовочных файлах включен, нужно ли препроцессором проверять  #ifndef или нет? Я не очень понимаю  С++ эту библиотеку столько раз в код включит сколько строк #include с ней найдет или все норм?
Вы говорите про include guards (защита подключения). Можете ещё узнать про #pragma once, если его использование допустимо в вашем окружении
источник

SD

Sergey Dubovik in supapro.cxx
Nastya Medveda
потому что там есть string,  а в cpp файле std::cout. так что чтоб два раза не вставать сразу включила iostream
string есть в <string>, а для использования cout в cpp файлах делайте include <iostream> в соответсвующих cpp файлах
источник

NM

Nastya Medveda in supapro.cxx
Sergey Dubovik
string есть в <string>, а для использования cout в cpp файлах делайте include <iostream> в соответсвующих cpp файлах
Сложно блин.
источник

ВЛ

Влад Линык in supapro.cxx
пацаны
источник

ВЛ

Влад Линык in supapro.cxx
вы знали что С промой наследник JS
источник

ВЛ

Влад Линык in supapro.cxx
прямой
источник

SD

Sergey Dubovik in supapro.cxx
Да, это во всех книгах по С написано
источник