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

Вопросы о C ++, статически типизированной, свободной форме, мультипарадигме, скомпилированном языке программирования общего назначения.

6
Можно ли использовать C ++ с .NET Framework?
Я прочитал много комментариев о программировании GUI, как на C #, так и на C ++. И я заметил, что платформа Microsoft .NET является мощной для программирования GUI. Так можно ли использовать C ++ и .NET Framework? Я думаю, что это будет отличная комбинация, поскольку C ++ является мощным языком, …
18 c++  .net 

4
Написание лексера на C ++
Каковы хорошие ресурсы о том, как написать лексер на C ++ (книги, учебные пособия, документы), каковы некоторые хорошие методы и практики? Я посмотрел в Интернете, и все говорят, чтобы использовать генератор лексера, как лекс. Я не хочу этого делать, я хочу написать лексер от руки.
18 c++  compiler  lexer 

3
Код проверки доставки. Почему бы тебе?
Я хотел бы отправить тестовый код вместе с продуктом. В частности, предоставьте опцию, чтобы любой, у кого есть копия нашей программы, мог нажать кнопку «самопроверка» или пройти --self-test в командной строке и выполнить полный набор модулей | интеграционные тесты. В основном я хочу сделать это, чтобы помочь отладить проблемы, обнаруженные …

5
Создают ли перечисления хрупкие интерфейсы?
Рассмотрим пример ниже. Любое изменение в перечислении ColorChoice влияет на все подклассы IWindowColor. Имеют ли перечисления тенденцию вызывать хрупкие интерфейсы? Есть ли что-то лучше, чем enum для большей полиморфной гибкости? enum class ColorChoice { Blue = 0, Red = 1 }; class IWindowColor { public: ColorChoice getColor() const=0; void setColor( …

2
О конкатенации смежных строковых литералов
C и C ++ компилируют смежные строковые литералы как единый строковый литерал. Например это: "Some text..." "and more text" эквивалентно: "Some text...and more text" В других языках семейства C, таких как C # или Java, это синтаксическая ошибка (что совершенно нормально, кстати). Каково обоснование / историческая причина для C и …

4
Какой из этих ответов относительно функций является неправильным?
Поэтому, пока я делал несколько длинных компиляций, я решил пройти общий тест C ++ на ODesk и наткнулся на этот вопрос. Если я не ошибаюсь, учитывая формулировку (или ее отсутствие), все это может быть правдой. а. int Foo() { } int Foo(int bar) { } б. Ну, это return void;было …
17 c++ 

4
Каковы проблемы приведения C ++ - подобного const в язык?
Меня интересует идея C ++ - например, constне это конкретное выполнение (например, отбрасывание const). Возьмем, к примеру, C # - ему не хватает C ++ - как const, и причина для этого обычная - люди и время. Здесь, кроме того, кажется, что команда C # посмотрела на выполнение C ++ …

5
Имеет ли смысл использовать объекты (вместо примитивных типов) для всего в C ++?
Во время недавнего проекта, над которым я работал, мне пришлось использовать множество функций, которые выглядят примерно так: static bool getGPS(double plane_latitude, double plane_longitude, double plane_altitude, double plane_roll, double plane_pitch, double plane_heading, double gimbal_roll, double gimbal_pitch, double gimbal_yaw, int target_x, int target_y, double zoom, int image_width_pixels, int image_height_pixels, double & Target_Latitude, …

3
Как бы вы провели юнит-тестирование или выполнили наиболее эффективный автоматический тест графического кода для OpenGL?
Я пишу игру и сопутствующий графический движок поверх OpenGL на C ++. Я также фанат хороших процессов кодирования и автоматического тестирования. Тестирование графического кода + кажется довольно несмешивающимся, так как вывод часто только визуальный или очень сильно визуально ориентированный. Например, представьте, что вы анализируете необработанный поток изображений, который отображается на …

4
Мотивация и использование конструкторов перемещения в C ++
Недавно я читал о конструкторах перемещения в C ++ (см., Например, здесь ), и я пытаюсь понять, как они работают и когда мне следует их использовать. Насколько я понимаю, конструктор перемещения используется для устранения проблем с производительностью, вызванных копированием больших объектов. На странице википедии написано: «Хроническая проблема с производительностью в …

4
Использовать `using` в C ++ или избегать этого?
Обесценивая слегка различную семантику из-за ADL, как я должен вообще использовать usingи почему? Это зависит от ситуации (например, заголовок, который будет #included против исходного файла, который не будет)? Кроме того, я должен предпочесть ::std::или std::? Уровень пространства имен using namespace: using namespace std; pair<string::const_iterator, string::const_iterator> f(const string &s) { return …
17 c++  namespace 

4
Почему стандарт C ++ не принял шаблоны выражений?
Насколько я понимаю, шаблоны выражений как метод были обнаружены значительно раньше, чем исходный стандарт C ++ в 1998 году. Почему они не использовались для повышения производительности нескольких стандартных классов, таких как std::stringи потоки?
17 c++  history 

13
Это правильное использование #define для облегчения ввода повторяющегося кода?
Есть ли мнение о том, является ли использование #define для определения полных строк кода для упрощения кодирования хорошей или плохой практикой программирования? Например, если бы мне нужно было напечатать несколько слов вместе, меня раздражало бы печатать << " " << Вставить пробел между словами в операторе cout. Я мог бы …

4
Форвардная декларация против включения
Reduce the number of #include files in header files. It will reduce build times. Instead, put include files in source code files and use forward declarations in header files. Я прочитал это здесь. http://www.yolinux.com/TUTORIALS/LinuxTutorialC++CodingStyle.html . Таким образом, он говорит, что если класс (класс A) в заголовочном файле не должен использовать …
17 c++  coding-style 

3
Как GDB приостанавливает исполнение
Как вы, возможно, знаете, мы можем использовать GDB и устанавливать точки останова в нашем коде, чтобы приостановить выполнение для отладки. Мои вопросы: как GDB приостанавливает процесс и позволяет вам просматривать содержимое регистров, используя, i rнапример. Разве эти регистры не используются другими процессами ОС постоянно? как они не перезаписываются? Это только …
16 c++  debugging 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.