Портал о программировании

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

Обо всем, что непонятно спрашивайте в комментариях. Новичку могут пригодиться некоторые программы для разработки. Если обучение дается тяжело, знайте — так у всех. Но кто-то бросает, а кто-то преодолевает барьер и начинает получать от этого удовольствие.

8 комментариев

Эта статья появилась на свет совершенно неожиданно. Мне на глаза случайно попался код вычисления НОД на C#.

С первого взгляда мне даже всё понравилось: простенько, лаконичненько и без лишнего выпендрёжа. Однако чем дольше я рассматривал этот код, тем больше возникало сомнений в его эффективности. Я решил сделать маленькое исследование.

26 комментариев

Иногда требуется сравнить скорость выполнения нескольких алгоритмов. Часто для этой цели используют профилировщики кода. Но иногда бывает, что профилировщика нет под рукой, или работа с ним сложна, а нужно просто сравнить скорость работы фрагмента кода А со скоростью работы фрагмента кода Б в небольшой тестовой программе.

4 комментария

Эта статья для тех, кто только начинает или планирует начать карьеру программиста. Вещи, описанные ниже, покажутся кому-то очевидными, тем не менее, новичкам эта информация будет полезна.

1 комментерий

На многих новостных сайтах и блогах есть система рекомендаций. Она нужна для того, чтобы пользователю, прочитавшему статью можно было показать другие интересные статьи.

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

В этой статье я поделюсь одним из способов, с помощью которого можно улучшить точность рекомендательной системы на новостном сайте или блоге.

9 комментариев

Эта статья является продолжением первой части про шаблоны и шаблонные функции в C++.

Шаблонные функции-члены

Функции-члены класса тоже могут быть шаблонными. Например, у нас имеется класс Math со статической функцией abs, которая вычисляет абсолютное значение числа:

struct Math
{
    static int abs ( int value )
    {
        return (value<0?-value:value) ;
    }
} ;

61 комментерий

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

41 комментерий

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

14 комментариев

Методы класса можно перегружать также, как и обычные функции. Особенно это удобно, когда нужно сделать несколько конструкторов, которые будут принимать разные параметры.

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