Ответ:
Каверзный вопрос с IT-собеседований, который чаще всего задают именно после виртуальных деструкторов, дабы сбить кандидата с толку. Конструктор не может быть виртуальным, поскольку в нем нет никакого смысла: при создании объектов нет такой неоднозначности, как при их удалении.
Каверзный вопрос с IT-собеседований, который чаще всего задают именно после виртуальных деструкторов, дабы сбить кандидата с толку. Конструктор не может быть виртуальным, поскольку в нем нет никакого смысла: при создании объектов нет такой неоднозначности, как при их удалении.
C++17 STL Cookbook (2017)
Автор: Jacek Galowicz
#cpp #book #en
Язык: English.
Целевая аудитория: разработчики C++.
C ++ прошел большой путь. Быстрый, эффективный и гибкий, он используется для решения многих проблем. Если вы хотите понять практическую полезность C++ 17 STL для написания более умного, полностью переносимого кода, то эта книга для вас.
В книге рассматриваются следующие темы:
✔️ возможности C ++;
✔️ написание кода с помощью стандартной библиотеки (STL)
✔️ масштабы и возможности функций STL для решения реальных проблем;
✔️ составление собственных алгоритмов, не отказываясь от простоты и элегантности пути STL и др.
Преимущества:
➕ хорошее обсуждение текущего состояния стандартной библиотеки;
➕ отличные примеры;
➕ структурировано и понятно.
Недостатки:
➖ не обнаружено.
Автор: Jacek Galowicz
#cpp #book #en
Язык: English.
Целевая аудитория: разработчики C++.
C ++ прошел большой путь. Быстрый, эффективный и гибкий, он используется для решения многих проблем. Если вы хотите понять практическую полезность C++ 17 STL для написания более умного, полностью переносимого кода, то эта книга для вас.
В книге рассматриваются следующие темы:
✔️ возможности C ++;
✔️ написание кода с помощью стандартной библиотеки (STL)
✔️ масштабы и возможности функций STL для решения реальных проблем;
✔️ составление собственных алгоритмов, не отказываясь от простоты и элегантности пути STL и др.
Преимущества:
➕ хорошее обсуждение текущего состояния стандартной библиотеки;
➕ отличные примеры;
➕ структурировано и понятно.
Недостатки:
➖ не обнаружено.
Уроки по разработке 64-битных приложений на C / C++
Разработка 64-битных приложений на C и C++. Этот курс был разработан в 2010 году. Однако он не устарел, и приведенная в нем информация достаточно актуальна для современных версий Visual Studio.
Курс посвящен созданию 64-битных приложений на языке C / C++ и предназначен для разработчиков Windows, использующих среду Visual Studio 2005/2008/2010. Разработчики, работающие с другими 64-битными операционными системами, также могут найти для себя много интересного. В курсе рассмотрены все этапы создания безопасного 64-разрядного приложения или перенос существующего 32-разрядного кода в 64-разрядную систему.
Разработка 64-битных приложений на C и C++. Этот курс был разработан в 2010 году. Однако он не устарел, и приведенная в нем информация достаточно актуальна для современных версий Visual Studio.
Курс посвящен созданию 64-битных приложений на языке C / C++ и предназначен для разработчиков Windows, использующих среду Visual Studio 2005/2008/2010. Разработчики, работающие с другими 64-битными операционными системами, также могут найти для себя много интересного. В курсе рассмотрены все этапы создания безопасного 64-разрядного приложения или перенос существующего 32-разрядного кода в 64-разрядную систему.
Viva64
Lessons on development of 64-bit C/C++ applications (single file)
This course was developed in 2010. However, it hasn't become obsolete and the information given in it is relevant enough for modern Visual Studio versions.
«Chaos Game» — реализация в C++
«Chaos Game» — математическая игра для одного игрока. Как это типично для подобных математических вещей, на самом деле это не игра. В математике этот термин первоначально относился к методу создания фрактала с использованием многоугольника и произвольно выбранной начальной точки внутри него. В этой статье показана реализация в C++ классической «Chaos Game».
Фрактал возникает путем итеративного создания последовательности точек, начиная с начальной случайной точки, в которой каждая точка в последовательности представляет собой заданную дробь расстояния между предыдущей точкой и одной из вершин многоугольника. Вершина выбирается случайным образом на каждой итерации. Повторение этого итеративного процесса большое количество раз, выбор случайной вершины на каждой итерации и выбрасывание первых нескольких точек в последовательности часто (но не всегда) приводит к появлению фрактальной формы.
Использование правильного треугольника и множителя 1/2 приведет к треугольнику Серпинского, а создание правильного расположения с четырьмя точками и множителю 1/2 создаст отображение «Тетраэдра Серпинского», трехмерного аналога Серпинского. Поскольку число точек увеличивается до числа N, расположение образует соответствующий (N-1)-мерный симплекс Серпинского.
«Chaos Game» — математическая игра для одного игрока. Как это типично для подобных математических вещей, на самом деле это не игра. В математике этот термин первоначально относился к методу создания фрактала с использованием многоугольника и произвольно выбранной начальной точки внутри него. В этой статье показана реализация в C++ классической «Chaos Game».
Фрактал возникает путем итеративного создания последовательности точек, начиная с начальной случайной точки, в которой каждая точка в последовательности представляет собой заданную дробь расстояния между предыдущей точкой и одной из вершин многоугольника. Вершина выбирается случайным образом на каждой итерации. Повторение этого итеративного процесса большое количество раз, выбор случайной вершины на каждой итерации и выбрасывание первых нескольких точек в последовательности часто (но не всегда) приводит к появлению фрактальной формы.
Использование правильного треугольника и множителя 1/2 приведет к треугольнику Серпинского, а создание правильного расположения с четырьмя точками и множителю 1/2 создаст отображение «Тетраэдра Серпинского», трехмерного аналога Серпинского. Поскольку число точек увеличивается до числа N, расположение образует соответствующий (N-1)-мерный симплекс Серпинского.
Solarianprogrammer
C++ Implementing a Chaos Game simulator | Solarian Programmer
How to implement the Chaos Game in C++
Бьерн Страуструп огорчен тем, что C++ используется для майнинга биткоинов
В интервью одного из подкастов создатель C++ Бьярн Страуструп высказался против того, что Биткойн был написан на его языке программирования вообще. По его словам, есть вещи, которые пытаешься предотвратить, но на самом деле контролировать невозможно.
«Поэтому я очень счастлив и горд относительно некоторых вещей, для которых используется C++, а другие вещи я бы хотел, чтобы люди не делали. Майнинг биткоина мой любимый пример, он потребляет так много энергии в Швейцарии, и по большей части служит преступникам», — отметил создатель C++.
В интервью одного из подкастов создатель C++ Бьярн Страуструп высказался против того, что Биткойн был написан на его языке программирования вообще. По его словам, есть вещи, которые пытаешься предотвратить, но на самом деле контролировать невозможно.
«Поэтому я очень счастлив и горд относительно некоторых вещей, для которых используется C++, а другие вещи я бы хотел, чтобы люди не делали. Майнинг биткоина мой любимый пример, он потребляет так много энергии в Швейцарии, и по большей части служит преступникам», — отметил создатель C++.
Hard Fork | The Next Web
C++ creator hates that Bitcoin was written in the language he made
The guy who built C++, which Bitcoin was written in, says Bitcoin mostly serves criminals, and is salty that it uses electricity.
Лучшие инструменты и советы начинающему C++ программисту
Хотите изучать C++? Делимся важными навыками, фреймворками и советами, которые помогут начинающему C++ программисту устроиться на работу.
😉👇
https://proglib.io/p/cpp-dev-skills
Хотите изучать C++? Делимся важными навыками, фреймворками и советами, которые помогут начинающему C++ программисту устроиться на работу.
😉👇
https://proglib.io/p/cpp-dev-skills
Библиотека программиста
Лучшие инструменты и советы начинающему C++ программисту
Хотите изучать C++? Делимся важными навыками, фреймворками и советами, которые помогут начинающему C++ программисту устроиться на работу.
Изучение многопоточности в C++
Стремление к производительности — то, с чем MICHAEL ADAIXO экспериментирует и консолидирует свои знания о многопоточности в своем блоге. В настоящее время эта тема становится более важной, поскольку процессоры получают все больше и больше ядер. Современные игровые движки и приложения используют несколько процессорных ядер, чтобы оставаться быстрыми и отзывчивыми.
Серия статей на эту тему:
Часть 1: Изучение многопоточности в C++;
Часть 2: Изучение многопоточности в C++;
Часть 3: Изучение многопоточности в C++: загрузка текстур;
Часть 4: Изучение многопоточности в C++: распараллеливание трассировки лучей.
Стремление к производительности — то, с чем MICHAEL ADAIXO экспериментирует и консолидирует свои знания о многопоточности в своем блоге. В настоящее время эта тема становится более важной, поскольку процессоры получают все больше и больше ядер. Современные игровые движки и приложения используют несколько процессорных ядер, чтобы оставаться быстрыми и отзывчивыми.
Серия статей на эту тему:
Часть 1: Изучение многопоточности в C++;
Часть 2: Изучение многопоточности в C++;
Часть 3: Изучение многопоточности в C++: загрузка текстур;
Часть 4: Изучение многопоточности в C++: распараллеливание трассировки лучей.
Первый игровой движок на С++ и SFML
Пошаговый гайд по написанию простого 2D игрового движка на С++: твой уверенный старт в геймдеве!
🤟🕺👇
https://proglib.io/sh/XgMAkSeQhl
Пошаговый гайд по написанию простого 2D игрового движка на С++: твой уверенный старт в геймдеве!
🤟🕺👇
https://proglib.io/sh/XgMAkSeQhl
Библиотека программиста
Первый игровой движок на С++ и SFML
Пошаговый гайд по написанию простого 2D игрового движка на С++: твой уверенный старт в геймдеве!
5 способов использования скобок могут сделать ваш код C++ более выразительным
Многие языки используют фигурные скобки для структурирования кода. Но в C++ фигурные скобки — гораздо больше, чем просто инструмент для удержания блоков кода вместе. В C++ фигурные скобки имеют значение. Точнее, фигурные скобки имеют несколько значений. В блоге Джонатана Боккары можно найти 5 простых способов сделать их более выразительными.
Многие языки используют фигурные скобки для структурирования кода. Но в C++ фигурные скобки — гораздо больше, чем просто инструмент для удержания блоков кода вместе. В C++ фигурные скобки имеют значение. Точнее, фигурные скобки имеют несколько значений. В блоге Джонатана Боккары можно найти 5 простых способов сделать их более выразительными.
Fluent C++
5 Ways Using Braces Can Make Your C++ Code More Expressive
Expressive code in C++
Как C++ 17 извлекает выгоду из библиотек Boost — интересная информация от блогера Bartlomiej Filipek, который показывает проверенные в бою функции из известных библиотек Boost, которые были адаптированы для C++ 17. С ростом числа элементов в стандартной библиотеке, поддерживаемых опытом Boost, вы можете писать еще более свободный код на C++.
Fluent C++
How C++17 Benefits from Boost Libraries, Part One
Expressive code in C++
Mid/Senior C++ Developer
➕Relocation to Berlin
➕75 000 - 120 000 EUR
➕Data visualization software company
https://teletype.in/@brainhunter.agency/rJTDSDGnr
➕Relocation to Berlin
➕75 000 - 120 000 EUR
➕Data visualization software company
https://teletype.in/@brainhunter.agency/rJTDSDGnr
Teletype
Mid/Senior C++ Developer, Relocation to Berlin
Berlin, Germany 🇩🇪 | 75 000 - 120 000 EUR | Data visualization software company
Что посмотреть «продолжающему» С++ разработчику?
Семь источников для разработчиков с опытом.
1. Видеокурс «Углубленное программирование на С/C++».
Этот курс нацелен на то, чтобы сформировать в вас практические навыки и умения, которые позволят разрабатывать ПО для UNIX-подобных ОС в проектах средней сложности на языках С и С++.
https://www.youtube.com/playlist?list=PLrCZzMib1e9rOysx0hgCaedIoOWNVjhQ0
2. Углублённый C++.
Курс углубленного С++, погрузит вас в тонкости языка. Вы узнаете о концепте const, о функциях, созданных компилятором. Также курс расскажет о статическом полиморфизме, множественном наследовании и прочих понятиях, которые помогут вам расширить знания С++.
https://www.youtube.com/playlist?list=PLGvfHSgImk4bLOOiQ3HmF_TSnltz17lA2
3. Погружение в C++11.
Этот курс расскажет и покажет вам новые функции С++11 и С++14. Обучение будет происходить на фоне разработки игры, так что вы сможете совместить приятное с полезным. Кроме новых возможностей С++ вы узнаете о динамической памяти, указателях, продолжительности жизни переменных, контроле памяти и прочих тонкостях, которые позволят вам еще лучше кодить.
https://www.youtube.com/playlist?list=PLTEcWGdSiQenl4YRPvSqW7UPC6SiGNN7e
4. Курс «C++ Threading».
Курс о многопоточности познакомит вас со всеми понятиями этого свойства платформы/приложения. Вы узнаете о том, как устроены потоки, как ими управлять и как они взаимодействуют.
https://www.youtube.com/playlist?list=PL5jc9xFGsL8E12so1wlMS0r0hTQoJL74M
5. Серия лекций по C++, в рамках которых затронуты некоторые продвинутые темы.
Из этого курса лекций вы узнаете о стандартной библиотеке шаблонов, продвинутых возможностях С++, метапрограммировании, а также стандартах С++ 11 и С++14.
https://www.youtube.com/playlist?list=PLlb7e2G7aSpQJpe8sWD2kIQ51Lx74H2FH
6. Курс «Библиотека STL C++. Продвинутый уровень».
Для того, чтобы просмотр этого курса принес вам пользу, необходимо, чтобы вы имели некоторые базовые знания STL. После него вы сможете использовать STL точно и эффективно.
https://www.youtube.com/playlist?list=PL5jc9xFGsL8E_BJAbOw_DH6nWDxKtzBPA
7. Многопоточное программирование на С/С++.
Целью этого курса является обучение межпроцессному взаимодействию и синхронизации потоков. Для того, чтобы применить полученные знания, по окончанию вы сможете создать свой веб-сервер. Темы курса включают в себя «Контейнеры», «Сокеты Беркли», «Процессы», «Потоки», «Параллельное программирование» и пр.
https://www.youtube.com/playlist?list=PLwwk4BHih4fhYu3nMqgMbp_SkYC5Kv684
Семь источников для разработчиков с опытом.
1. Видеокурс «Углубленное программирование на С/C++».
Этот курс нацелен на то, чтобы сформировать в вас практические навыки и умения, которые позволят разрабатывать ПО для UNIX-подобных ОС в проектах средней сложности на языках С и С++.
https://www.youtube.com/playlist?list=PLrCZzMib1e9rOysx0hgCaedIoOWNVjhQ0
2. Углублённый C++.
Курс углубленного С++, погрузит вас в тонкости языка. Вы узнаете о концепте const, о функциях, созданных компилятором. Также курс расскажет о статическом полиморфизме, множественном наследовании и прочих понятиях, которые помогут вам расширить знания С++.
https://www.youtube.com/playlist?list=PLGvfHSgImk4bLOOiQ3HmF_TSnltz17lA2
3. Погружение в C++11.
Этот курс расскажет и покажет вам новые функции С++11 и С++14. Обучение будет происходить на фоне разработки игры, так что вы сможете совместить приятное с полезным. Кроме новых возможностей С++ вы узнаете о динамической памяти, указателях, продолжительности жизни переменных, контроле памяти и прочих тонкостях, которые позволят вам еще лучше кодить.
https://www.youtube.com/playlist?list=PLTEcWGdSiQenl4YRPvSqW7UPC6SiGNN7e
4. Курс «C++ Threading».
Курс о многопоточности познакомит вас со всеми понятиями этого свойства платформы/приложения. Вы узнаете о том, как устроены потоки, как ими управлять и как они взаимодействуют.
https://www.youtube.com/playlist?list=PL5jc9xFGsL8E12so1wlMS0r0hTQoJL74M
5. Серия лекций по C++, в рамках которых затронуты некоторые продвинутые темы.
Из этого курса лекций вы узнаете о стандартной библиотеке шаблонов, продвинутых возможностях С++, метапрограммировании, а также стандартах С++ 11 и С++14.
https://www.youtube.com/playlist?list=PLlb7e2G7aSpQJpe8sWD2kIQ51Lx74H2FH
6. Курс «Библиотека STL C++. Продвинутый уровень».
Для того, чтобы просмотр этого курса принес вам пользу, необходимо, чтобы вы имели некоторые базовые знания STL. После него вы сможете использовать STL точно и эффективно.
https://www.youtube.com/playlist?list=PL5jc9xFGsL8E_BJAbOw_DH6nWDxKtzBPA
7. Многопоточное программирование на С/С++.
Целью этого курса является обучение межпроцессному взаимодействию и синхронизации потоков. Для того, чтобы применить полученные знания, по окончанию вы сможете создать свой веб-сервер. Темы курса включают в себя «Контейнеры», «Сокеты Беркли», «Процессы», «Потоки», «Параллельное программирование» и пр.
https://www.youtube.com/playlist?list=PLwwk4BHih4fhYu3nMqgMbp_SkYC5Kv684
YouTube
Курс · C/С++ (осень 2014)
Лекции в рамках программы 1 курса Технопарка Mail.ru Group в МГТУ им. Н.Э. Баумана. Осень 2014 года. Преподаватель - Алексей Петров Цель курса: формирование ...
Кто бы хотел протестировать в облаке свои проекты на C/C++?
Intel сделали продукт, анализирующий ваш код, указывающий на проблемы и дающий советы по улучшению производительности.
Подробности по ссылке: https://software.intel.com/en-us/vtune
Нужен доброволец, готовый в облаке протестировать, поделиться впечатлениями и кейсами работы данной технологии.
По всем вопросам пишите: @theasder
Intel сделали продукт, анализирующий ваш код, указывающий на проблемы и дающий советы по улучшению производительности.
Подробности по ссылке: https://software.intel.com/en-us/vtune
Нужен доброволец, готовый в облаке протестировать, поделиться впечатлениями и кейсами работы данной технологии.
По всем вопросам пишите: @theasder
Intel
Fix Performance Bottlenecks with Intel® VTune™ Profiler
Use advanced sampling and profiling methods to quickly analyze code, isolate issues, and deliver performance insight on modern CPUs, GPUs, and FPGAs.
Библиотека C/C++ разработчика | cpp, boost, qt pinned «Кто бы хотел протестировать в облаке свои проекты на C/C++? Intel сделали продукт, анализирующий ваш код, указывающий на проблемы и дающий советы по улучшению производительности. Подробности по ссылке: https://software.intel.com/en-us/vtune Нужен доброволец…»
Хорошее объяснение, почему синглтон-классы C++ и наследование не являются хорошими друзьями. :)
Stack Overflow
C++ Singleton class - inheritance good practice
In an existing project, I am to inherit a Controller class (MVC) declared as Singleton so as to define my own treatment. How to appropriately derive this Singleton class?
First, I expand on conte...
First, I expand on conte...
Печальная история спецификаторов формата Unicode в стиле printf в Visual C++
Windows приняла Unicode раньше, чем язык C. Тогда это означало, что Windows должна была придумать поддержку Unicode в среде выполнения C. Речь пойдет о формате строк в printf-стиле.
Windows приняла Unicode раньше, чем язык C. Тогда это означало, что Windows должна была придумать поддержку Unicode в среде выполнения C. Речь пойдет о формате строк в printf-стиле.
Алгоритмы в C++: запросы к статическим массивам
В статье рассмотрены элементарные структуры данных для получения ответов на запросы по диапазону.
👇👇👇
https://prglb.ru/43v8e
В статье рассмотрены элементарные структуры данных для получения ответов на запросы по диапазону.
👇👇👇
https://prglb.ru/43v8e
Алгоритмы и структуры данных на C++: деревья отрезков
В статье рассмотрим фундаментальные вещи, такие как алгоритмы и структуры данных в C++. Говорим о деревьях отрезков.
👇👇
https://prglb.ru/305kt
В статье рассмотрим фундаментальные вещи, такие как алгоритмы и структуры данных в C++. Говорим о деревьях отрезков.
👇👇
https://prglb.ru/305kt
Библиотека программиста
Алгоритмы и структуры данных на C++: деревья отрезков
Интересуетесь "плюсами"? В статье рассмотрим фундаментальные вещи, такие как алгоритмы и структуры данных в C++. Говорим о деревьях отрезков.