Публикации по теме 'cpp'


Зачем использовать динамический язык вместо статически типизированного?
Динамические и статически типизированные языки существовали бок о бок с тех пор, как существовали языки программирования. Оба они существуют, потому что имеют разные преимущества и недостатки. Все это время враждовали сторонники динамических и статических языков. Эта дискуссия не нова. Однако я буду утверждать, что динамические языки, как правило, чаще искажаются. Среди поклонников статической типизации часто подразумевается, что поклонники динамической типизации игнорируют преимущества..

Связанный список XOR: эффективный с точки зрения памяти двусвязный список
Недавно я решил задачу, которая требует выяснить, является ли данный односвязный список палиндромом или нет. Это довольно тривиально для двусвязных списков. Делюсь ссылкой на проблему . Чтобы решить эту проблему, вы можете просто создать двойной список из данного списка. Но для этого потребуется дополнительная память. И есть способ решить эту проблему в линейной пространственной сложности. Чтобы решить ее в линейном пространстве, вы можете перевернуть вторую половину списка на..

Постоянно сбивает с толку: поведение указателей const и constexpr в C ++
Краткое объяснение того, как const и constexpr работают с указателями в C ++ Итак, я проверял правильность своих знаний при работе над ошибкой Firefox. Я быстро сделал файл на C ++ со всеми известными мне примерами использования const и constexpr для указателей. Как можно видеть , это довольно запутанно! Поскольку в операторе есть несколько мест, где вы можете поставить 'const', может быть сложно определить, на какую часть вашего оператора ссылается 'const'. Как правило, лучше читать..

Покрытие отрезков точками
Покрытие отрезков точками Эта проблема была взята из Coursera Специализация по структурам данных и алгоритмам , в частности из Курса Algorithmic Toolbox , неделя 3: Жадные алгоритмы , которые я недавно завершил. Если вы проходите этот курс или планируете пройти этот курс, пожалуйста, не ждите решения, поскольку оно противоречит Кодексу чести и не принесет вам никакой пользы. Введение в проблему Вам дается набор сегментов на линии, и ваша цель - отметить как можно меньше..

Мой первый вклад в открытый исходный код
Как и многие люди, занимающиеся программированием для жизни, я всегда задавался вопросом, насколько легко (или насколько сложно, в зависимости от уровня вашего оптимизма) вносить вклад в открытый исходный код. Кроме того, слушая кучу подкастов по информатике и программированию, я слышал, как многие участники и сопровождающие говорят о том, какой вклад они внесли в открытый исходный код, поэтому я тоже хотел попробовать. Почему сейчас ? Почему именно сейчас, спросите вы. Ну это вопрос..

Гибридные языки программирования - вы, вероятно, используете один
Гибридные языки программирования - вы, вероятно, используете один Лично я фанат гибридных автомобилей, потому что пока не хочу переходить на 100% электрический. Точно так же я поклонник гибридных языков программирования, также известных как многопарадигмальные языки программирования . Хотя существует несколько парадигм программирования, для простоты я буду говорить только о функциональном и объектно-ориентированном. Если вернуться к автомобильной идеологии, функциональными являются..

Однократное использование #pragma вместе с условной компиляцией
Директива #pragma once предлагает некоторые преимущества по сравнению с традиционной идиомой защиты заголовка, но, поскольку она не является частью стандарта C/C++, мы должны полагаться на — не слишком подробную — документацию компилятора. В этой статье я исследую, что произойдет, если вы смешаете эту директиву с другими директивами препроцессора и условной компиляцией. Программы C/C++ разделены на заголовок ( .h , .hpp ) и исходный код ( .c , .cc , .cpp ) и заголовочные файлы..