c++- все статьи тега ➜ страница 14


Отладка с параметрами командной строки в Visual Studio

Я разрабатываю приложение командной строки C++ в Visual Studio и должен отлаживать его с помощью аргументов командной строки. На данный момент я просто запускаю сгенерированный EXE-файл с аргументами, которые мне нужны (например,program.exe -file.txt), но таким образом я не могу отлаживать. Где я могу указать аргументы для отладки? ...

Итератор правила о признании недействительными

каковы правила недействительности итератора для контейнеров C++? желательно в формате сводного списка. (Примечание:это должно быть запись в C++ FAQ Stack Overflow. Если вы хотите критиковать идею предоставления FAQ в этой форме, то публикация на meta, которая начала все это было бы место, чтобы сделать это. Ответы на этот вопрос отслеживаются в в C++ чат, где идея FAQ началась в во-первых, поэтому ваш ответ, скорее всего, будет прочитан теми, кто придумал эту идею.) ...

Когда я должен написать ключевое слово 'inline' для функции/метода?

когда я должен написать ключевое слово inline для функции/метода в C++? после того как увидел ответы на некоторые вопросы, некоторые связанные с этим вопросы: когда я не напишите ключевое слово 'inline' для функции/метода в C++? когда компилятор не будет знать, когда сделать функцию / метод'inline'? имеет ли значение, если приложение многопоточный когда один пишет 'inline' для функции / метода? ...

Как объявить 2d-массив в C++ с помощью new?

как объявить 2d массив с помощью new? например, для" нормального " массива я бы: int* ary = new int[Size] но int** ary = new int[sizeY][sizeX] а) не работает / компилируется и б) не выполняет то, что: int ary[sizeY][sizeX] делает. ...

Как очистить переменную stringstream?

Я уже пробовал несколько вещей, std::stringstream m; m.empty(); m.clear(); оба из которых не работают. ...

Как инициализировать частные статические члены В C++?

что является лучшим способом, чтобы инициализировать собственный статический член данных в C++? Я попробовал это в моем заголовочном файле, но это дает мне странные ошибки компоновщика: class foo { private: static int i; }; int foo::i = 0; Я предполагаю, что это потому, что я не могу инициализировать собственный член из-за пределов класса. Так как же лучше всего это сделать? ...

В чем разница между "STL" и "стандартной библиотекой C++"?

кто-то принес в этой статье к моему вниманию, что утверждает (я перефразирую) термин STL неправильно используется для обозначения всей стандартной библиотеки C++ вместо частей, которые были взяты из SGI STL. (...) это относится к "STL", несмотря на то, что очень мало людей все еще используют STL (который был разработан в SGI). части стандартной библиотеки C++ были основаны на частях STL, и именно эти части многие люди (в том числе несколько авторов и заведомо ошибочных cplusplus.com) по ...

Как удалить элемент из std:: vector по индексу?

У меня есть std::vector, и я хочу удалить n-й элемент. Как мне это сделать? std::vector<int> vec; vec.push_back(6); vec.push_back(-17); vec.push_back(12); vec.erase(???); ...

C++ статическая постоянная строка (член класса)

Я хотел бы иметь частную статическую константу для класса (в данном случае shape-factory). Я бы хотел иметь нечто подобное. class A { private: static const string RECTANGLE = "rectangle"; } к сожалению, я получаю всевозможные ошибки от компилятора C++ (g++), такие как: ISO C++ запрещает инициализацию член 'прямоугольник' недопустимая инициализация в классе статического элемента данных нецелого типа 'std:: string' ошибка: создание " прямоугольника’ статика Это говор ...

Как я могу маркировать строку в C++?

Java имеет удобный метод разделения: String str = "The quick brown fox"; String[] results = str.split(" "); есть простой способ сделать это в C++? ...

С контекстно-свободной++ или контекстная?

я часто слышу утверждения, что C++ является контекстно-зависимым языком. Возьмем следующий пример: a b(c); это определение переменной или объявление функции? Это зависит от значения символа c. Если c это переменная, потом a b(c); задает переменную b типа a. Он непосредственно инициализируется с помощью c. Но если c это тип, потом a b(c); объявляет функцию с именем b что берет а c и возвращает a. если вы посмотрите определение контекстно-свободных языков, это в основном скажет вам, что все пр ...

Сравнение строк без учета регистра в C++ [закрыто]

каков наилучший способ сделать сравнение строк без учета регистра в C++ без преобразования строки во все прописные или все строчные буквы? пожалуйста, укажите, являются ли методы Unicode-friendly и насколько они портативны. ...

Как использовать константу PI в C++

Я хочу использовать константу PI и тригонометрические функции в некоторых программах на C++. Я получаю тригонометрические функции с include <math.h>. Однако в этом заголовочном файле, похоже, нет определения для PI. Как я могу получить PI, не определяя его вручную? ...

Почему Java не предлагает перегрузку оператора?

переходя с C++ на Java, очевидный вопрос без ответа-почему Java не включала перегрузку операторов? не Complex a, b, c; a = b + c; гораздо проще, чем Complex a, b, c; a = b.add(c);? есть ли известная причина для этого, допустимые аргументы для не возможность перегрузки операторов? Является ли причина произвольной или потерянной во времени? ...

Как выполнить команду и получить вывод команды в C++ с помощью POSIX?

Я ищу способ получить вывод команды, когда она запускается из программы на C++. Я посмотрел на использование функции system (), но это будет просто выполнить команду. Вот пример того, что я ищу: std::string result = system( "./some_command" ) ; Мне нужно выполнить произвольную команду и получить ее вывод. Я посмотрел на Boost.org но я не нашел ничего, что даст мне то, что мне нужно. ...

Разница ключевых слов 'typename' и 'class' в шаблонах?

для шаблонов я видел оба заявления: template < typename T > template < class T > какая разница? и что именно означают эти ключевые слова в следующем примере (взятом из статьи немецкой Википедии о шаблонах)? template < template < typename, typename > class Container, typename Type > class Example { Container< Type, std::allocator < Type > > baz; }; ...

Что такое виртуальный базовый класс В C++?

Я хочу знать, что это "виртуальный базовый класс" и что это означает. позвольте мне показать пример: class Foo { public: void DoSomething() { /* ... */ } }; class Bar : public virtual Foo { public: void DoSpecific() { /* ... */ } }; ...

Проверьте, содержит ли строка строку в C++

у меня есть переменная типа std::string. Я хочу проверить, содержит ли он определенный std::string. Как бы я это сделал? есть ли функция, которая возвращает true, если строка найдена, и false, если это не так? спасибо. ...

Когда использовать ссылки и указатели

Я понимаю синтаксис и общую семантику указателей по сравнению со ссылками, но как я должен решить, когда более или менее целесообразно использовать ссылки или указатели в API? Естественно, некоторые ситуации нуждаются в том или ином (operator++ нужен ссылочный аргумент), но в целом я нахожу, что предпочитаю использовать указатели (и указатели const), поскольку синтаксис ясен, что переменные передаются деструктивно. например, в следующем код: void add_one(int& n) { n += 1; } void add_one(i ...

Как передать уникальный аргумент ptr конструктору или функции?

Я новичок в перемещении семантики в C++11, и я не очень хорошо знаю, как обрабатывать unique_ptr параметры в конструкторах или функции. Рассмотрим этот класс, ссылающийся на себя: #include <memory> class Base { public: typedef unique_ptr<Base> UPtr; Base(){} Base(Base::UPtr n):next(std::move(n)){} virtual ~Base(){} void setNext(Base::UPtr n) { next = std::move(n); } protected : Base::UPtr next; }; это, как я должен написать функции ...