12 Apr 2026, 10:23 UTC70 views1 reactionsread 10 August 2026 🎯 Итоговая сводка
lvalue:
-- категория - именованные объекты;
-- когда возникает - элементы массива, функции;
-- что можно делать - взять адрес, присвоить, скопировать;
-- примеры - x, arr[0], func.
xvalue:
Результат std::move(), rvalue references | Переместить, но не взять адрес напрямую | std::move(x), static_cast<T&&>(obj) |
| prvalue | Литералы, временные объекты, арифметика | Переместить, использовать для иниц…
🔥1
Signed Pavel
12 Apr 2026, 09:59 UTC53 viewsread 10 August 2026 ⚠️ Распространённые заблуждения:
❌ Миф 1: «rvalue = правая часть присваивания»
int x = 42; // 42 — prvalue (правая часть)
x = 42; // 42 — всё ещё prvalue, но теперь в середине выражения
❌ Миф 2: «Именованные rvalue references — это rvalues»
void func(std::string&& s) {
// s — ИМЕНОВАННАЯ переменная!
// Несмотря на &&, s является LVALUE внутри функции!
std::string copy = s; // ✅ OK — копиро…
Signed Pavel
12 Apr 2026, 09:59 UTC30 viewsread 10 August 2026 Примеры:
42; // prvalue — целочисленный литерал
3.14; // prvalue — литерал с плавающей точкой
true; // prvalue — булевый литерал
std::string{}; // prvalue — временный объект
x + y; // prvalue — результат арифметической операции
func(); // prvalue — если func() возвращает по значению
🧪 Практические примеры различий
Пример 1: Что можно делать с каждой категорией…
Signed Pavel
12 Apr 2026, 09:59 UTC23 viewsread 10 August 2026 Компилятор выбирает между копированием и перемещением на основе категории выражения.
2. Perfect Forwarding
template<typename T>
void wrapper(T&& arg) {
// arg — forwarding reference
// Если передали lvalue → arg становится lvalue reference
// Если передали rvalue → arg становится rvalue reference
process(std::forward<T>(arg));
}
3. Оптимизации компилятора
-- Copy Elision — компилятор может пропуст…
Signed Pavel
12 Apr 2026, 09:59 UTC25 viewsread 10 August 2026 #554_Cpp_TP
🔧 Value Categories в C++: glvalue, xvalue, prvalue
В C++ (начиная с C++11) все выражения делятся на категории значений (value categories). Это фундаментальное понятие для понимания семантики перемещения, perfect forwarding и оптимизаций компилятора.
📊 Общая схема категорий
Expression
│
┌───────────┴───────────┐
│ …
Signed Pavel
8 Mar 2026, 10:29 UTC49 viewsread 10 August 2026 #553_II_IF_TP
Продолжнении беседы с ИИ об ИИ ✌️😁.
Вопрос:
Правильно ли я понял, когда ты пишешь код, ты используешь только те конструкции, которые уже встречались тебе на этапе обучения и не можешь создать, что-то принципиально новое, или это все таки возможно, но все же в рамках различных комбинаций фрагментов кода на которых ты ранее обучался?
Ответ:
🎯 Отличный вопрос — ты почти всё понял правильно!
📚 Как я ге…
Signed Pavel
8 Mar 2026, 10:29 UTC62 views1 reactionsread 10 August 2026 Сценарий 2: Комбинирование:
// Архитектура Тетриса с трейтами для рендеринга
pub trait Renderer {
fn render_board(&mut self, board: &Board);
}
pub struct Game<R: Renderer> {
renderer: R,
// ...
}
Такую конкретную комбинацию я мог не видеть, но каждый элемент знаком. Это интерполяция.
Сценарий 3: Попытка инновации (риск галлюцинации):
// Я придумываю новый паттерн для обработки гравитации
struct GravitySyste…
👍1
Signed Pavel
8 Mar 2026, 10:26 UTC32 views1 reactionsread 10 August 2026 #552_II_IF_TP
ИИ об ИИ. (ИИ о себе).
Вопрос:
Объясни простыми словами принципы работы нейросетей, ИИ-агентов и т.п. каким образом происходит обучение ИИ моделей и каким образом они (и ты) пишешь код на разных языках программирования, и возможно ли, что ты будешь сам писать код для своего развития.
🧠 Нейросети и ИИ — простыми словами (без математики).
Представь, что ты учишь ребёнка рисовать кошек:
1. Как раб…
❤1
Signed Pavel
8 Mar 2026, 10:26 UTC37 viewsread 10 August 2026 5. Могу ли я писать код для собственного развития? — Короткий ответ: нет.
Вот почему:
— Я — статичная модель. Мой «мозг» (веса нейросети) зафиксирован после обучения. Я не могу себя изменить.
— Нет доступа к своему коду — я работаю внутри защищённой среды — не вижу и не могу редактировать программу, которая меня запускает.
— Безопасность — если бы ИИ мог себя модифицировать — это создало бы риски (непред…
Signed Pavel
5 Mar 2026, 11:19 UTC34 views1 reactionsread 10 August 2026 #551_Cpp_ALG_IdPt_LIB_STL_TP
✅ Идиома "remove — erase" в C++.
В ЯП C++ идиома "remove-erase" — стандартная методика удаления элементов из контейнеров (таких как `std::vector`, `std::list`, `std::deque` и других), которая сочетает использование алгоритма std::remove (или `std::remove_if`) и метода erase соответствующего контейнера.
✅ Зачем нужна идиома "remove-erase"?
Алгоритм std::remove (или std::remove_if…
🔥1
Signed Павел
17 Feb 2026, 10:31 UTC59 viewsread 10 August 2026 75. Larry Wall
Думаю, это будет новой фичей. Только не говорите никому, что она возникла случайно.
76. Larry Wall
Тяжело улучшать код, который до этого уже улучшали много раз.
77. Larry Wall
Лень — главное достоинство программиста.
78. Donald Knuth
Чтобы понять алгоритм, нужно его увидеть.
79. Donald Knuth
У меня предчувствие, что неизвестные цепочки ДНК расшифруются в копирайты и патенты.…
Signed Павел
17 Feb 2026, 10:31 UTC48 viewsread 10 August 2026 50. Jamie Zawinski
Некоторые люди во время решения некой проблемы думают: «Почему бы мне не использовать регулярные выражения?». После этого у них уже две проблемы…
51. Richard Stallman
Я не умею делать скриншоты, потому что я обычно работаю на компьютере в текстовом режиме.
52. Edward V Berard
Ходить по воде и разрабатывать программы, следуя спецификации, очень просто… если они заморожены.
53. Okta…
Signed Павел
Showing the 12 most recent of 20 posts we hold for @dnk_c_cpp. View and reaction counts are the latest single reading for each post, not a live figure, and a recent post is still accumulating both. A view count marked ≈ was rounded by Telegram before we ever saw it — t.me prints views in full below 1,000 and to three significant figures above, so ≈1,200,000 means somewhere between 1,150,000 and 1,249,999. Unmarked counts are exact. Text is reproduced from the public post preview and truncated for length.