Вопросы по теме 'std'

Есть ли разница между std::map‹int, int› и std::map‹const int, int›?
Насколько я понимаю, ключ в паре значений в std::map не может быть изменен после вставки. Означает ли это, что создание карты с аргументом шаблона ключа как const не имеет никакого эффекта? std::map<int, int> map1; std::map<const int,...
3643 просмотров
schedule 02.08.2022

C++ std::queue::pop() вызывает деструктор. Какие типы указателей?
У меня есть std::queue , который обернут как шаблонный класс, чтобы создать потокобезопасную очередь. У меня есть две версии этого класса: одна хранит типы значений, другая хранит типы указателей. Для типа указателя у меня возникают проблемы с...
30341 просмотров
schedule 12.12.2023

Пользовательский класс как параметр шаблона
Я повторно реализую std::map . Мне нужно убедиться, что ключ любого типа данных (базовый или определяемый пользователем) будет работать с ним. Я объявил класс Map как шаблон, который имеет два параметра для ключа и значения. Мой вопрос: если мне...
1713 просмотров
schedule 14.08.2022

Перегрузка оператора списка C++ STL для пар (сортировка по первому значению, доступ по второму значению)
Здравствуйте, у меня есть несколько сложных операторов перегрузки для std::list. Я храню пары в списке, состоящем из значения int и массива позиций: typedef std::pair< int, std::vector<int,3> > pointPairType; typedef...
2120 просмотров
schedule 09.04.2023

std :: string vs string в c ++
Возможные дубликаты: Почему 'using namespace std;' считается плохой практикой в ​​C ++? Использование пространства имен std Я бродил по множеству разных форумов, и мне кажется, что это всплывает снова и снова. Это вопрос для...
70750 просмотров
schedule 13.03.2024

Создание нового списка с тем же стандартом и средним значением
Как создать новый список из случайных чисел, которые имеют то же среднее значение и стандартное отклонение, что и исходный список? Я пробовал newlist = mean(list) + std(list)*randn(100,1); который я нашел на веб-сайте Matlab, но он генерировал...
577 просмотров
schedule 28.04.2023

Ссылка на оператор ‹‹ и std::stringstream?
У меня есть класс, который содержит ссылку на строковый поток (используемый как общий журнал приложений). Как добавить текст в указанный строковый поток? Пример (поскольку я не могу размещать здесь настоящий исходный код...) main stringstream...
4151 просмотров
schedule 10.06.2024

Почему std::bind1st можно считать почти непригодным для использования?
Во время разговора о boost::bind было отмечено, что std::bind1st существует в C++03, но "почти непригоден для использования". Я не могу найти ничего твердого, чтобы поддержать это. В в boost::bind документации говорится:...
1454 просмотров
schedule 21.05.2022

Как разрешить параметру std:string быть NULL?
У меня есть функция foo(const std::string& str); , которая падает, если вы вызываете ее с помощью foo(NULL) . Что я могу сделать, чтобы предотвратить его сбой?
4908 просмотров
schedule 21.04.2024

std::multimap получает два диапазона
Я использую C++ std::multimap , и мне приходится перебирать два разных ключа. Есть ли эффективный способ сделать это, кроме создания двух диапазонов и отдельного цикла по этим диапазонам? Вот как я это делаю сейчас:...
966 просмотров
schedule 28.04.2024

визуальная студия 2008 sp1 std::string::c_str() ошибка
я встретил такую ​​​​же ситуацию в моем проекте. Аналогичным образом был воспроизведен следующий код. #include <iostream> #include <vector> using namespace std; class METHOD { public: vector<METHOD*> m_arg; string name;...
1234 просмотров
schedule 05.01.2023

C++ стандартная сортировка списка с пользовательским компаратором, который зависит от переменной-члена для экземпляра объекта
Сорт: Class: private: ... vector<string> words; vector< list<int> > vints; public: myFunction(...) Я вызываю сортировку в непустом списке в другой функции-члене: void myClass::myFunction (...) {...
13037 просмотров
schedule 16.12.2022

Инициализация std::unordered_map
Когда я получаю доступ к элементу в std::unordered_map с помощью оператора [] для в первый раз он создается автоматически. Каковы (если есть) гарантии его инициализации? (Гарантированно будет инициализировано значение или только построено)?...
12563 просмотров
schedule 20.12.2023

Как поместить массив символов в std :: string
Я выделяю массив символов, затем мне нужно вернуть его в виде строки, но я не хочу копировать этот массив символов, а затем освобождать его память. char* value = new char[required]; f(name, required, value, NULL); // fill the...
3140 просмотров
schedule 05.06.2024

Синтаксическая ошибка инициализатора std::array c++11
я получаю std::array no match for ‘operator=’ in ‘myarr = {1, 5, 2, 3, 4}’ ошибка при компиляции этого кода #include <iostream> #include <array> using namespace std; int main(int argc, char const *argv[]) { array<int,...
1093 просмотров
schedule 31.12.2023

Управление памятью и контейнерные классы C++
У меня возникли проблемы с использованием стандартных классов контейнеров (список, карта и т. д.) в С++. Проблема, похоже, связана с удалением элементов для контейнеров. Я пытаюсь сохранить указатели на объекты внутри контейнера, а затем, когда я...
1176 просмотров
schedule 30.11.2022

std :: vector - как освободить память элементов char * в векторе?
Рассмотрим следующие коды C ++: using namespace std; vector<char*> aCharPointerRow; aCharPointerRow.push_back("String_11"); aCharPointerRow.push_back("String_12"); aCharPointerRow.push_back("String_13"); for (int i=0;...
2995 просмотров
schedule 12.11.2022

Контейнер C++ STL ::clear ::swap
Какой самый быстрый способ «очистить» большой контейнер STL? В моем приложении мне нужно иметь дело с большим размером std::map , например, 10000 элементов. Я протестировал следующие 3 метода, чтобы очистить файл std::map . Создавайте новый...
3130 просмотров
schedule 12.04.2022

Зачем мне использовать push_back вместо emplace_back?
В векторах C ++ 11 появилась новая функция emplace_back . В отличие от push_back , который полагается на оптимизацию компилятора для предотвращения копий, emplace_back использует идеальную пересылку для отправки аргументов непосредственно...
65148 просмотров
schedule 27.06.2022

Разделить строку файла csv на std::vector?
У меня есть функция, которая будет читать CSV-файл построчно. Для каждой строки он разделит линию на вектор. Код для этого std::stringstream ss(sText); std::string item; while(std::getline(ss, item, ',')) {...
12723 просмотров
schedule 12.04.2023