C++ Learning
10.4K subscribers
1.48K photos
4 videos
7 files
1.04K links
№ 4974310652

Обучающий канал по C++

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Learning_pluses
Download Telegram
В чем проблема со следующим кодом?

class A
{
public:
A() {}
~A(){}
};

class B: public A
{
public:
B():A(){}
~B(){}
};

int main(void)
{
A* a = new B();
delete a;
}

Поведение не определено, потому что деструктор A не является виртуальным.
Что выведет код сверху?
Anonymous Quiz
44%
11
19%
10
37%
compile time error
1%
13
Чтение и отображение изображения в OpenCV с использованием C ++

Как мы видим нам потребовалось включить пространства имен cv, которое содержит все функции, классы и структуры данных OpenCV.

Более подробное описания кода можно найти здесь.
#Вопросы_с_собеседования

Что такое rvalue, lvalue?

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

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

Смотреть статью
Что выведет код сверху?
Anonymous Quiz
34%
10
11%
Мусорное значение
49%
Compile error
7%
Runtime error
Пример UB

Ярким примером UB и ошибочного кода является повторное использование (в том числе повторное изменение) изменяемой переменной при вычислении выражения, когда относительный порядок вычисления термов не определен (то же касается фактических параметров функции в точке вызова).
Удаление указателя NULL

Удаление указателя NULL не приводит к каким-либо изменениям и ошибкам.
Пчела на работе, разработка игр на SFML C++

Пчела на работе – простая компьютерная игра, написанная на С++ используя мультимедийную библиотеку SFML.

Смотреть статью
Проверяем, содержит ли строка только буквы в C++

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

Начиная с C++11, мы можем использовать std::regex_match для сопоставления последовательности с регулярным выражением.
Что выведет код?
Anonymous Quiz
7%
0
53%
1
13%
2
9%
3
18%
Compiler Error
this удобно использовать для цепочных вызовов

Мы можем вернуть ссылку на объект, на котором мы вызываем метод класса:

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);
Что выведет код сверху?
Anonymous Quiz
19%
0
9%
10
41%
20
31%
Error
Как вывести в консоль числа от 1 до 100 без рекурсии и циклов?

В этой программе используется концепция метапрограммирования шаблонов.