Вопросы с тегом «c++»

265
Вперед, объявляя перечисление в C ++

Я пытаюсь сделать что-то вроде следующего: enum E; void Foo(E e); enum E {A, B, C}; который компилятор отклоняет. Я быстро посмотрел на Google, и консенсус, кажется, «вы не можете сделать это», но я не могу понять, почему. Кто-нибудь может объяснить? Пояснение 2: Я делаю это, поскольку у меня есть...

265
функции-члены std :: string length () и size ()

Я читал ответы на этот вопрос и обнаружил, что на самом деле есть метод, называемыйlength() для std::string(я всегда использовал size()). Есть ли какая-то конкретная причина для использования этого метода в std::stringклассе? Я прочитал и MSDN и CppRefernce, и они, кажется, указывают, что нет...

264
Как я могу читать и анализировать файлы CSV в C ++?

Мне нужно загрузить и использовать данные файла CSV в C ++. На данный момент это может быть просто парсер, разделенный запятыми (т.е. не беспокойтесь о экранировании новых строк и запятых). Основная потребность - построчный анализатор, который будет возвращать вектор для следующей строки каждый...

263
Как я могу добавить отражение в приложение C ++?

Я хотел бы иметь возможность проанализировать класс C ++ на предмет его имени, содержимого (т.е. членов и их типов) и т. Д. Я говорю здесь на родном C ++, а не на управляемом C ++, в котором есть отражение. Я понимаю, что C ++ предоставляет некоторую ограниченную информацию, используя RTTI. Какие...

262
Быстрый потолок целочисленного деления в C / C ++

При заданных целочисленных значениях xи yC, и C ++ оба возвращают как частное q = x/yзначение эквивалента с плавающей запятой. Меня интересует метод возврата потолка. Например, ceil(10/5)=2и ceil(11/5)=3. Очевидный подход включает в себя что-то вроде: q = x / y; if (q * y < x) ++q; Это требует...

262
преобразовать символ * в std :: string

Мне нужно использовать std::stringдля хранения данных, полученных fgets(). Для этого мне нужно преобразовать char*возвращаемое значение из fgets()в std::stringдля хранения в массиве. Как это может быть...

261
Как разобрать строку в int в C ++?

Какой способ синтаксического анализа строки (заданной как char *) в int в C ++? Надежная и понятная обработка ошибок является плюсом (вместо возврата нуля

260
Как бросить исключение C ++

У меня очень плохое понимание обработки исключений (например, как настроить операторы throw, try, catch для моих собственных целей). Например, я определил функцию следующим образом: int compare(int a, int b){...} Я бы хотел, чтобы функция генерировала исключение с некоторым сообщением, когда a или...

258
Как вы делаете HTTP-запрос с C ++?

Есть ли способ легко сделать HTTP-запрос с C ++? В частности, я хочу загрузить содержимое страницы (API) и проверить содержимое, чтобы увидеть, содержит ли оно 1 или 0. Можно ли также загрузить содержимое в...

257
выбрасывать исключения из деструктора

Большинство людей говорят, что никогда не выбрасывают исключение из деструктора - это приводит к неопределенному поведению. Страуструп подчеркивает, что «векторный деструктор явно вызывает деструктор для каждого элемента. Это означает, что, если деструктор элемента выбрасывает, векторное разрушение...

257
Автозаполнение в Vim

Короче говоря, я ищу работающую функцию автозаполнения для редактора Vim. Ранее я утверждал, что Vim полностью заменяет IDE в Linux, и, хотя это, безусловно, правда, в ней отсутствует одна важная функция: автозаполнение. Я знаю , о Ctrl+ N, интеграции Буйный Ctags , Taglist , cppcomplete и...

256
Указатель против ссылки

Что было бы лучше, если дать функции исходную переменную для работы: unsigned long x = 4; void func1(unsigned long& val) { val = 5; } func1(x); или: void func2(unsigned long* val) { *val = 5; } func2(&x); IOW: есть ли какая-то причина, чтобы выбирать между...

255
«Распаковка» кортежа для вызова соответствующего указателя на функцию

Я пытаюсь сохранить в std::tupleразличном количестве значений, которые позже будут использоваться в качестве аргументов для вызова указателя функции, который соответствует сохраненным типам. Я создал упрощенный пример, показывающий проблему, которую я пытаюсь решить: #include <iostream>...

254
Преимущества встроенных функций в C ++?

Каковы преимущества / недостатки использования встроенных функций в C ++? Я вижу, что это только увеличивает производительность для кода, который выводит компилятор, но с современными оптимизированными компиляторами, быстрыми процессорами, огромной памятью и т. Д. (Не так, как в 1980 году <где...

254
Как преобразовать массив символов в строку?

Конвертировать C ++ stringв массив char довольно просто, используя c_strфункцию string и затем делая это strcpy. Однако как сделать наоборот? У меня есть массив символов , как: char arr[ ] = "This is a test";быть преобразован обратно в: string str = "This is a...