Senior C++ Developer
Изучаем C++. По вопросам сотрудничества: @adv_and_pr РКН: https://www.gosuslugi.ru/snet/676e9a1e4e740947beca35ba
Показати більше📈 Аналітичний огляд Telegram-каналу Senior C++ Developer
Канал Senior C++ Developer (@seniorcpp) у мовному сегменті Російська є активним учасником. На даний момент спільнота об'єднує 11 495 підписників, посідаючи 10 766 місце в категорії Технології та додатки та 55 605 місце у регіоні Росія.
📊 Показники аудиторії та динаміка
З моменту свого створення невідомо, проект продемонстрував стрімке зростання, зібравши аудиторію у 11 495 підписників.
За останніми даними від 04 листопада, 2026, канал демонструє стабільну активність. Хоча за останні 30 днів спостерігається зміна кількості учасників на -73, а за останні 24 години на -4, загальне охоплення залишається високим.
- Статус верифікації: Не верифікований
- Рівень залученості (ER): Середній показник залученості аудиторії становить 12.86%. Протягом перших 24 годин після публікації контент зазвичай збирає 4.97% реакцій від загальної кількості підписників.
- Охоплення публікацій: В середньому кожен допис отримує 1 478 переглядів. Протягом першої доби публікація в середньому набирає 571 переглядів.
- Реакції та взаємодія: Аудиторія активно підтримує контент: середня кількість реакцій на один пост – 0.
- Тематичні інтереси: Контент зосереджений навколо ключових тем, таких як c++, контейнер, диапазон, git, true.
📝 Опис та контентна політика
Автор описує ресурс як майданчик для висловлення суб'єктивної думки:
“Изучаем C++.
По вопросам сотрудничества: @adv_and_pr
РКН: https://www.gosuslugi.ru/snet/676e9a1e4e740947beca35ba”
Завдяки високій частоті оновлень (останні дані отримано 05 листопада, 2026), канал підтримує актуальність та високий рівень охоплення публікацій. Аналітика показує, що аудиторія активно взаємодіє з контентом, що робить його важливою точкою впливу в категорії Технології та додатки.
static void set(int x) { this->x = x; }
Здесь мы добавили для метода setмодификатор static.
obj.set(6);
Мы получим ошибку компиляции: ‘this’ is unavailable for static member functions.
Это объясняется тем, что указатель this передаётся только в нестатические методы класса как скрытый параметр. В статических методах он недоступен.class Foo {
private:
int x;
public:
Foo(int x = 0) { this->x = x; }
void change(Foo *foo) { this = foo; }
void print() { cout << x << endl; }
};
Здесь в методе change мы пытаемся присвоить указателю this новое значение.
Попробуем вызвать метод change в методе main:
Foo obj (3);
Foo *ptr;
obj.change(ptr);
obj.print();
Если мы запустим код, то получим ошибку компиляции в методе change (lvalue required as left operand of assignment). Компилятор не позволяет нам изменить значение указателя this.void set(int x) { this->x = x; }
Здесь в методе set мы присваиваем полю класса x значение локальной переменной this. Чтобы различить поле класса x и локальную переменную с тем же именем мы используем запись this->x при обращении к полю класса.void getX() { return this->x; }
В большинстве случаев мы можем опустить часть this-> и написать просто x.Foo &set(int x) { this->x = x; return *this; }
Здесь метод set возвращает ссылку на объект класса Foo(Foo&). Такая реализация метода позволяет нам писать код, подобный этому:
obj.set(2).set(8);Это возможно, поскольку первый вызов метода set возвращает указатель на объект obj. Второй метод вызывается на объекте obj, т. е. можно переписать код так:
obj = obj.set(2);
obj = obj.set(8);std::array вместо кортежа. Такой массив подобен обычному массиву в Си вместе с несколькими функциями стандартной библиотеки C++. Эта структура данных была добавлена в 11 версии C++.if (init-statement(x); condition(x)) {
// some code
}
else { // в else тоже видно x
// some more code
}if (p−−>m == 0) f(p);
Выглядит так, как будто и правда есть оператор −−>, и если правильно объявить переменные p и m, то код даже скомпилируется и запустится:
int p = 2;
int m = 0;
if (p−−>m == 0) f(p);
Это означает: если p−− больше чем m (а это так), то надо сравнить результат (true) с нулём. Ну, true != 0, так что результат всего выражения — false, и функция f() не вызовется. Другими словами:
if ((p−−) > m == 0) f(p);
Пожалуйста, не тратьте много времени на подобные вопросы. Они сбивали с толку новичков ещё до того, как появился С++.