Вопросы по теме 'std'
Strtol, strtod небезопасны?
Кажется, что strtol() и strtod() эффективно позволяют (и заставляют) отказаться от константности в строке:
#include <stdlib.h>
#include <stdio.h>
int main() {
const char *foo = "Hello, world!";
char *bar;
strtol(foo,...
5536 просмотров
schedule
06.10.2023
std :: sort и std :: уникальная проблема со структурой
Следующий код:
#include <vector>
#include <algorithm>
struct myStructDim
{
int nId;
int dwHeight;
int dwWidth;
};
void main()
{
::std::vector<myStructDim> m_vec_dim;...
2105 просмотров
schedule
30.09.2022
Зачем вообще использовать «errno»?
Я студент CS в Технионе, я только что узнал о errno переменных и вызовах функций в стиле c. Это заставляет меня задаться вопросом, если системные вызовы в стиле C используют регистры для возврата значения, почему вообще кто-то должен использовать...
3301 просмотров
schedule
13.02.2024
Передать стандартные предикаты алгоритмов по ссылке в С++
Я пытаюсь удалить элементы из std::list и сохранить некоторую статистику удаленных элементов.
Для этого я использую функцию remove_if из списка, и у меня есть предикат. Я хотел бы использовать этот предикат для сбора статистики. Вот код...
1346 просмотров
schedule
05.10.2022
Эффективный метод случайного выбора всех элементов std::vector ровно один раз БЕЗ перетасовки
Я ищу эффективный метод для выбора доступа к каждому элементу std::vector<T> в случайном порядке, без их перетасовки или копирования, т.е. без использования std::random_shuffle и обеспечения того, чтобы каждый элемент выбирался только один...
808 просмотров
schedule
13.12.2023
работа с std::bitset
Существует определение класса и несколько логических функций, которые проверяют некоторые атрибуты.
class MemCmd
{
friend class Packet;
public:
enum Command
{
InvalidCmd,
ReadReq,...
521 просмотров
schedule
08.12.2023
состояние std::vector после std::bad_alloc
Я пытаюсь найти онлайн-ссылку, чтобы увидеть безопасность исключений нескольких стандартных контейнеров.
В случае std::vector сохраняется ли состояние, предшествующее вызову push_back? Я бы предположил, что все объекты вектора все еще...
438 просмотров
schedule
03.02.2024
std::auto_ptr против std::tr1::shared_ptr
Возможный дубликат: Какой тип указатель использовать когда?
Я читал, что std::auto_ptr устарело, поэтому вместо него нужно использовать std::tr1::shared_ptr . Как я читал, разница в том, что std::tr1::shared_ptr имеет подсчет...
697 просмотров
schedule
15.04.2024
Что такое структура данных карты в C++
Какая структура данных используется для следующей строки кода на С++?
map <char, int> dict;
Это хеш-таблица?
7767 просмотров
schedule
16.02.2024
Как преобразовать std::vector‹unsigned char› в вектор‹char› без копирования?
Я не смог найти этот вопрос, и это реальная проблема, с которой я столкнулся.
У меня есть утилита загрузки файлов, которая возвращает std::vector<unsigned char> , содержащую все содержимое файла. Однако для функции обработки требуется...
6668 просмотров
schedule
05.11.2023
Как получить ссылку на состояние из лямбда с предложением захвата?
Lambdas может захватывать элементы из контекста, в котором они созданы, используя синтаксис [=] . Я предполагаю, что в лямбде должна храниться ссылка на состояние, что-то вроде указателя this .
class Class
{
public:
void Function()
{...
382 просмотров
schedule
24.04.2024
Карта С++ STL: время доступа O (1)?
Ищет ли ключ std::map O(1)? Я думал, что это так, пока я не подумал об этом больше. Он основан на реализации дерева, поэтому время поиска должно быть O (log N), правильно?
И возможно ли, чтобы O (1) искал строковый ключ, возможно,...
45351 просмотров
schedule
27.04.2024
Как я могу убедиться, что всегда есть заданное количество потоков? (Кроме того, это хорошее использование потоков?)
Я только сегодня начал погружаться в многопоточность, используя стандартную библиотеку. Ниже то, что я придумал до сих пор. Хотя в принципе он работает, он не запускает новый поток после завершения одного, а запускает 4 потока после завершения...
153 просмотров
schedule
04.10.2023
Использование класса в качестве значения для карты STL — неопределенный символ
Я использую Embarcadero RAD Studio XE C++ Builder. У меня небольшая проблема с правильной работой моей карты STL.
#ifndef BbTabManagerH
#define BbTabManagerH
#include "BbSeExplorer.h"
#include "BbTabPage.h"
#include <map>
#define...
1032 просмотров
schedule
24.09.2022
Как читать stdin в стандартном C ++ для двух чисел, разделенных запятой?
Мне нужно прочитать stdin для двух чисел, разделенных запятой, используя стандартную библиотеку C ++ (без повышения). Таким образом, пользователь будет вводить числа в консоли в формате,
Примеры
2,3
3,10
Если бы это было для C, я мог бы...
727 просмотров
schedule
10.03.2024
Эффективное пересечение множеств?
Мне интересно, какой самый эффективный способ сделать это.
У меня есть очки, которые я набираю с 2-х мест.
Меня интересуют только те моменты, которые являются общими для обоих мест.
Мой план состоит в том, чтобы иметь 3 std::set<Point>...
225 просмотров
schedule
11.11.2023
std::regex_replace принимает не менее 6 аргументов
Я пытаюсь научиться использовать библиотеку регулярных выражений в С++ 11. В Ubuntu 13.10 я пытаюсь скомпилировать следующий пример из cplusplus.com :
// regex_replace example
#include <iostream>
#include <string>
#include...
1449 просмотров
schedule
30.01.2024
Хорошо ли перегружать математические функции в пространстве имен std в С++?
Я пишу класс C++, который представляет арифметический тип (оболочка C++ вокруг mpfr ), и я хотел бы для поддержки некоторых функций из ‹cmath› (в качестве примера я возьму std::sqrt).
Итак, у меня есть следующий класс:
namespace ns
{
class...
2209 просмотров
schedule
08.12.2023
Правильный способ проверки размера std::vector внутри цикла
У меня есть std::vector, который мне нужно часто перебирать. Я вижу два способа сделать это
Первый способ:
const size_t SIZE = myVec.size();
for (size_t i = 0; i < SIZE; i++)
{
myVec[i] = 0;
}
Второй способ:
for (size_t i = 0;...
361 просмотров
schedule
29.08.2022
Как объявляется/определяется std::vector‹bool›?
В различных онлайн-ресурсах я читал, что std::vector<bool> имеет собственное поведение, которое полностью отличается от других типов std::vectors.
В частности, он сжимает вектор таким образом, что каждый индекс представляет один бит, а не...
148 просмотров
schedule
15.03.2024