Официально опубликован стандарт C++11
Сегодня Комитет Стандартизации C++ опубликовал новый стандарт нашего с вами языка. Последний стандарт C++ был опубликован в 1998 году, с тех пор появилось много модных веяний, некоторые из них, комитет и попытался внести в стандарт.
Если честно, то мне кажется, что новый стандарт – типичный пример припарок мертвому. С++ – очень монструозный язык с кучей лишнего, и добавлять новые фичи без обрезания старых — опасно.
Сейчас стандарт занимает чуть более 1300 страниц, и со всеми теми нюансами и нюансиками, которые там присутствуют, врядле может поместиться в голове смертного программиста.
Тем не менее, стандарт есть, рано или поздно он доберется и до нас (те, кто использует GCC уже могут пользоваться подавляющим большинством новшеств). В википедии уже есть хорошая статья, посвящённая новым возможностям C++.
Поздравляю нас с вами!
offsetof(s, m)
Если порыться по стандартным заголовочным фалам ANSI-C компилятора, то в файле stddef.h можно найти макрос offsetof()
Макрос offsetof() имеет тру-эмбеддерское объявление
Самое интересное, что несмотря на полезность этого макроса, он очень редко используется. Я и сам не знал о его существовании до сегодняшнего дня.
(more…)Стиль С/С++. Соглашения о именах.
Предлагаю цикл статей по оформлению кода на C/C++ для встраиваемых систем. Написать о стиле целиком – довольно большая работа, поэтому я решил разбить ее на цикл статей. После того, как весь стандарт будет написан, я скомпилирую pdf с квинтэссенцией (О_о), который можно будет распечатать и пользоваться как руководство в вашей работе.
Объединим эмбеддеров Руси!
Создание автономного C-приложения с библиотекой matlab
Иногда нужно сделать приложение, которое общается с неким девайсом и выполняет сложные математические расчеты. Конечно, можно написать свои библиотеки или найти библиотеки сторонних разработчиков, но зачем, если все уже написано за нас? Намного проще написать матлабовскую функцию, отладить ее и использовать в своем приложении.
Дык на чем писать-то?
Среди эмбеддеров живы споры по поводу того – на каком языке лучше писать программы для контроллеров. Одни ратуют за ассемблер – мол, быстрее, компактнее, другие, те что за Си говорят, что на нем программы быстрее пишутся, а по скорости совсем слегка проигрывают ассемблеру. Оба этих класса эмбеддеров катят бочку на тех, кто пользуется C++: мол, он слишком медлителен прожорлив и опасен для встраиваемых систем. Ну что, устроим холивор?