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

18
Почему книги говорят: «Компилятор выделяет пространство для переменных в памяти»?

Почему книги говорят: «Компилятор выделяет пространство для переменных в памяти». Разве это не исполняемый файл, который делает это? Я имею в виду, например, если я напишу следующую программу, #include <iostream> using namespace std; int main() { int foo; return 0; } и скомпилировать его, и...

18
Почему я вижу так много экземпляров классов без состояния?

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

17
Код проверки доставки. Почему бы тебе?

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

17
Каковы проблемы приведения C ++ - подобного const в язык?

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

17
Это правильное использование #define для облегчения ввода повторяющегося кода?

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

17
Почему стандарт C ++ не принял шаблоны выражений?

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

17
Использовать `using` в C ++ или избегать этого?

Обесценивая слегка различную семантику из-за ADL, как я должен вообще использовать usingи почему? Это зависит от ситуации (например, заголовок, который будет #included против исходного файла, который не будет)? Кроме того, я должен предпочесть ::std::или std::? Уровень пространства имен using...

17
Как бы вы провели юнит-тестирование или выполнили наиболее эффективный автоматический тест графического кода для OpenGL?

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

17
Мотивация и использование конструкторов перемещения в C ++

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

17
Создают ли перечисления хрупкие интерфейсы?

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

17
Какой из этих ответов относительно функций является неправильным?

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

17
Имеет ли смысл использовать объекты (вместо примитивных типов) для всего в 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,...

17
О конкатенации смежных строковых литералов

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

16
Почему мы помещаем закрытые функции-члены в заголовки?

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

16
Повышение уровня моего кода C / C ++

Я программирую уже 3-4 года и чувствую, что меня больше нельзя назвать новичком, но я читаю некоторые вопросы на этом сайте и думаю, о чём они говорят? Сейчас я чувствую то же самое, когда беру книги по программированию. Я прочитал несколько начинающих книг по программированию, некоторые на C / C...

16
Почему Java считается более переносимым, чем другие языки, такие как C ++?

Locked . Этот вопрос и его ответы заблокированы, потому что вопрос не по теме, но имеет историческое значение. В настоящее время он не принимает новые ответы или взаимодействия. Чем отличается «написание конкретной JRE для каждой платформы» для разработчиков Java и «написание компилятора C ++ для...

16
С чего начать обучение использованию библиотек Boost?

Boost недавно стал доступен для проекта, над которым я работаю, и у меня нет особого опыта работы с ним. Библиотека имеет так много частей и функций, что трудно понять, с чего начать ее изучение - тем более, что я буду пытаться изучать ее при создании производственного кода (поэтому она не может...

16
Лучший обзор современных парадигм C ++? [закрыто]

Закрыто. Этот вопрос не по теме . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме разработки программного обеспечения в стеке. Закрыто 4 года назад . Я часто писал на C ++ от 8 до 10 лет назад. С тех пор я перешел на C # по...

16
Когда я должен использовать string_view в интерфейсе?

Я использую внутреннюю библиотеку, которая была разработана для имитации предложенной библиотеки C ++ , и иногда в последние несколько лет я вижу, что ее интерфейс изменился с использования std::stringна string_view. Поэтому я покорно изменяю свой код, чтобы соответствовать новому интерфейсу. К...