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

21
Как обрабатывать ошибки в конструкторе класса C ++?

У меня есть класс CPP, конструктор которого выполняет некоторые операции. Некоторые из этих операций могут потерпеть неудачу. Я знаю, что конструкторы ничего не возвращают. Мои вопросы Разрешено ли выполнять некоторые операции, кроме инициализации членов в конструкторе? Можно ли сказать вызывающей...

21
Чем С отличается от С ++?

Многие люди говорят, что C ++ - это совершенно другой язык, чем C, но сам Бьярне сказал, что C ++ - это язык, который расширен от C, поэтому и является его источником ++. Так почему же все продолжают говорить, что C и C ++ - это совершенно разные языки? Чем C отличается от C ++, кроме расширенных...

21
Вообще стоит ли использовать виртуальные функции, чтобы избежать ветвления?

Кажется, что есть грубые эквиваленты инструкций, чтобы приравнять к стоимости пропущенных веток виртуальные функции имеют аналогичный компромисс: инструкция против пропуска кэша данных барьер оптимизации Если вы посмотрите на что-то вроде: if (x==1) { p->do1(); } else if (x==2) { p->do2(); }...

21
Есть ли тест соответствия на компиляторы C ++? [закрыто]

Закрыто. Этот вопрос не по теме . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме разработки программного обеспечения в стеке. Закрыто 5 лет назад . Есть ли где-нибудь свободно используемый / доступный скрипт, исходный файл или...

21
Следует ли перемещать нетривиальные условные операторы в раздел инициализации циклов?

Я получил эту идею из этого вопроса на stackoverflow.com Следующий шаблон является распространенным: final x = 10;//whatever constant value for(int i = 0; i < Math.floor(Math.sqrt(x)) + 1; i++) { //...do something } Суть, которую я пытаюсь сделать, заключается в том, что условное утверждение...

21
Учитывая, что C ++ '11 был одобрен, это изменится, как начинающий C ++ изучает язык? [закрыто]

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

21
Имеет ли смысл добавлять модульные тесты для хорошо известного устаревшего кода?

Я говорю о модульных тестах в смысле TDD. (Не автоматизированная «интеграция», или то, что вы любите называть тестами.) Устаревший код как в: (C ++) код без тестов. (см .: « Эффективная работа Майкла Фезерса с устаревшим кодексом» ) Но также унаследованный код, такой как: Код, с которым наша...

21
Используйте абстрактный класс в C # как определение

Как разработчик C ++ я довольно привык к заголовочным файлам C ++ и считаю полезным иметь какую-то принудительную «документацию» внутри кода. У меня обычно бывает плохое время, когда мне приходится читать код C # из-за этого: у меня нет такой ментальной карты класса, с которой я работаю. Давайте...

21
Использование статических классов в качестве пространств имен

Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 8 лет назад . Я видел других разработчиков, использующих статические классы как пространства имен public static class CategoryA { public class Item1 { public void...

21
Когда парадигма «Делай одно» становится вредной?

Хотите улучшить этот пост? Предоставьте подробные ответы на этот вопрос, включая цитаты и объяснение того, почему ваш ответ правильный. Ответы без достаточной детализации могут быть отредактированы или удалены. Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в...

21
Как запустить код C ++ в браузере, используя asm.js?

Приложение asm.js очень быстрое (почти на родной скорости C ++): http://kripken.github.io/mloc_emscripten_talk/micro4b.png Но как можно написать один на C ++, преобразовать его в код LLVM, а затем сделать какой-нибудь трюк с emscripten / asm.js? Я не нашел учебника по этому поводу. И если я напишу...

21
Код с низкой задержкой иногда должен быть «некрасивым»?

(Это в основном предназначено для тех, кто обладает специфическими знаниями о системах с низкой задержкой, чтобы люди просто не отвечали безосновательными мнениями). Считаете ли вы, что существует компромисс между написанием «хорошего» объектно-ориентированного кода и написанием очень быстрого кода...

21
Что значит сделать «нулевую проверку» в C или C ++?

Я изучал C ++, и мне трудно понять ноль. В частности, в руководствах, которые я прочитал, упоминается «проверка на ноль», но я не уверен, что это значит или почему это необходимо. Что именно является нулевым? Что значит «проверить на ноль»? Мне всегда нужно проверять на ноль? Любые примеры кода...

20
Действительно ли заголовочные файлы хороши? [закрыто]

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

20
Почему Java не помещает имя файла в аргументы?

В C и C ++ метод main хранит имя файла в первой позиции массива в argv [0]. В Java, однако, имя файла не включено в массив строк args. Есть ли практическая причина для этого? Я понимаю, что это делает перебор аргументов командной строки на основе 0 вместо 1 на основе, но есть ли преимущество? Было...

20
Приводит ли модульное тестирование к преждевременному обобщению (особенно в контексте C ++)?

Предварительные заметки Я не буду вдаваться в различие между различными типами тестов, на этих сайтах уже есть несколько вопросов по этому поводу. Я возьму то, что там, и это говорит: модульное тестирование в смысле «тестирования самого маленького изолируемого модуля приложения», из которого...

20
Должны ли быть утверждения в сборках релиза

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

20
Общие методы программирования для ускорения времени кодирования

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