Рубрика «visual c++» - 2

enter image description here

Так получилось, что за достаточно долгую карьеру Windows и Embedded разработчика судьба свела меня по серьезному с Linux всего лишь несколько месяцев назад. Нужно было написать не очень сложную консольную программу. На тот момент все мои знания о Linux были взяты из курса по операционным системам в вузе (10 лет назад). Но Stackoverflow, google и опыт позволили достаточно быстро справиться с задачей. В итоге все было написано в Visual Studio Code под Ubuntu 14.04. Правда, приложение под Linux являлось только лишь небольшим клиентом для Windows сервера. Поэтому результат не очень удовлетворял меня, так как был оторван от основного проекта в Visual Studio. И только сейчас я смог перенести код в основной проект с помощью Visual C++ for Linux Development. В процессе мне пришлось решить несколько сопутствующих проблем. Об этом я рассажу под катом.

Читать полностью »

image

Месяц назад Евгений Гречников grechnik опубликовал пост «Стандартная библиотека Visual Studio 2015 и телеметрия», в котором рассказал об интересной находке: оказалось, что в любом бинарнике, скомпилированном VS2015 из программы на C или C++, есть код, который может писать логи — и выглядело это всё слегка подозрительно, особенно в силу отсутствия исходников telemetry.cpp.

Три дня назад этот вопрос был снова поднят на Reddit, где время от времени в комментариях появляются разработчики Visual Studio — и вот сегодня общественности наконец-то удалось получить вполне себе официальный ответ от представителя Microsoft.

Самое важное: телеметрия будет убрана из статических библиотек в обновлении Update 3.
Читать полностью »

Даже не знаю, поможет ли кому данная статья или нет, но так как в момент написания своей мини-игры я не нашёл ответа на данный вопрос, решил написать решений.

Месяцев 2 назад я начал писать мини-игру, просто для оттачивания имеющихся умений и приобретения новых. Игра была задумана 2D. Полистав немножко интернет, нашёл вполне нормальную библиотеку для начинающего (ну и не только) — SFML. Идея была придумана и библиотека выбрана.
Читать полностью »

PVS-Studio and Visual Studio 2013Мне предложили проверить библиотеки, входящие в Visual Studio 2013. Ничего особенно примечательного я не нашёл. Только несколько мелких ошибок и недочётов. Интригующую статью из этого не сделаешь, но я всё равно опишу замеченные недостатки. Надеюсь, это сделает библиотеки чуть лучше, и подвигнет авторов провести более тщательную проверку. У меня нет файлов проектов для сборки библиотек. Поэтому я проверял файлы кое-как, и много могло быть пропущено.
Читать полностью »

Техника безопасностиВ качестве небольшой разминки перед статьёй хотелось бы, чтобы читатель задал себе следующий вопрос: нужно ли фотографу для получения качественных снимков знать, как работает фотоаппарат? Ну, по крайней мере, должен ли он знать понятие «диафрагма»? «Отношение сигнал-шум»? «Глубина резкости»? Практика подсказывает, что даже со знанием таких сложных слов снимки могут получиться у наиболее «рукастых» не особо лучше снятых на мобильник через 0.3-МПикс-дупло. И наоборот, по-настоящему хорошие снимки могут получаться благодаря исключительно опыту и наитию при полном незнании матчасти (хотя это, скорее, исключения из правил, но всё же). Однако вряд ли со мной кто-то будет спорить, что профессионалам, которые хотят выжать из своей техники всё (а не только количество мегапикселей на квадратный миллиметр матрицы), эти знания нужны в обязательном порядке, поскольку в противном случае ему и называться профессионалом-то нельзя. И верно это не только для отрасли цифровой фотографии, но и для практически любой другой.

Верно это и для программирования, а для программирования на языке С++ – вдвойне. В этой статье будет описано важное понятие языка, известное как «Виртуальный табличный указатель», что присутствует почти во всех сложных классах, и то, каким образом его можно случайно повредить. Это может, в свою очередь, вести к едва поддающимся отладке ошибкам. Сначала напомню, что это вообще такое, а затем и поделюсь своими соображениями по поводу того, как и что может там сломаться.
Читать полностью »

В последнее время я увлёкся темой зависимости от C Runtime в проектах, написанных на Visual C++. Вернее, темой избавления от зависимости от Visual C++ Redistributable, ведь если проект представляет собой небольшую библиотеку интеграции или простейшую утилиту, таскать за собой целый распространяемый пакет не очень удобно.

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

Сразу оговорюсь, что я изначально ожидаю, в целом, справедливой критики на счёт правильности подхода к проблемам и вообще в целом линковки с msvcrt.dll — да, это не поддерживаемое Microsoft решение, да, это решение больше подходит для новых проектов, и да, возможно, придётся отказаться от многих плюшек, но ведь это используют, да и кто не рискует… В общем, все, кому интересна эта тема, как и мне, — прошу под кат.

Заранее прошу прощения за заголовок: я старался перевести фразу «Linking to msvcrt.dll in Visual C++». Статья моя, это не перевод, но название всё-таки проще сформулировать на английском.
Читать полностью »

StdAfx.h, Precompiled headers
Статья рассчитана на людей, которые знакомятся со средой Visual Studio и пытаются компилировать в ней свои Си++-проекты. В незнакомой среде всё кажется странным и непонятным. Особенно новичков раздражает файл stdafx.h, из-за которого возникают странные ошибки во время компиляции. Очень часто всё заканчивается тем, что новичок долгое время везде старательно отключает Precompiled Headers. Чтобы помочь людям разобраться что к чему, и была написана эта статья.
Читать полностью »

Бомба в PVS-Studio!

Сейчас в PVS-Studio мы делаем бомбу!

В следующей версии PVS-Studio 5.15 сможет проверять проекты, которые собираются абсолютно в любой сборочной системе: Makefile, Visual Studio Project, собственная система сборки на основе Python, Bash или что там еще… Теперь мы можем просто «наблюдать» за вызовами компилятора. И собирать всю необходимую информацию для запуска анализа автоматически. Более того, это работает с любым (разумным) компилятором C/C++, который запускается в Windows. Хотите подробностей?

Читать полностью »

Авторы: Евгений Рыжков (EvgeniyRyzhkov), Андрей Карпов (Andrey2008), Павел Еремеев (Paull), Святослав Размыслов (svyatoslavmc).

CppCat vs PVS-Studio vs Cppcheck vs Visual Studio

Мы провели подробное сравнение четырёх анализаторов Си/Си++ кода: CppCat, Cppcheck, PVS-Studio и статический анализатор, встроенный в Visual Studio 2013. Это серьезное исследование, на которое нами было потрачено около 170 человеко-часов и которое, на наш взгляд, хорошо отражает картину, существующую на данный момент.
Читать полностью »

CppCat
Вас приветствуют разработчики статического анализатора кода PVS-Studio. Мы разработали новый программный продукт — CppCat. Разработан он так. Мы представили, что у нас нет PVS-Studio, но есть опыт в разработке инструментов статического анализа для языка Си/Си++. И мы с чистой головой разработали новый статический анализатор таким, каким бы хотели его видеть. Мы сделали инструмент простым и лёгким. И что многих обрадует, он будет стоить $250 за одну инсталляцию.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js