Учитывая тот факт, что текущий C # 3.0 допускает автоматические свойства, синтаксис которых подобен:
public int Property {get; set;}
дополнительная работа, необходимая для использования свойств над открытыми полями, практически равна нулю. Дело в том, что вы никогда не можете быть полностью уверены, что поле не будет использоваться по-другому, или метод доступа никогда не изменится, и, учитывая компромисс в работе, нет никаких причин не реализовывать свойство.
В любом случае, анализатор жалуется на вещи, которые в большом проценте (в данном случае, например, в 99,99% случаев) являются плохой практикой программирования ... но в любом случае это просто жалобы. Поля могут быть обнародованы, и есть некоторые крайние случаи, когда их прямое использование может быть оправдано. Как всегда, используйте ваш здравый смысл ... но имейте в виду элементарное правило для лучших практик программирования ... Есть ли действительно веская причина нарушить соглашение? Если есть тогда продолжайте, если нет или если ответ «это включает в себя больше работы», то придерживайтесь практики ...
Другое портативное решение:
POSH: Portable Open Source Harness
«POSH - это простой, портативный, легкий в использовании, легко интегрируемый, гибкий, открытый «жгуты» исходного кода, предназначенные для того, чтобы сделать написание кроссплатформенных библиотек и приложений значительно менее утомительным для создания и переноса ».
http://poshlib.hookatooka.com/poshlib/trac.cgi
, как описано и используется в книга: Написание переносимого кода: введение в разработку программного обеспечения для нескольких платформ Брайан Хук http://books.google.ca/books?id=4VOKcEAPPO0C
-Джейсон
Обновление: Visual Studio 2010 и Visual C ++ 2010 Express имеют stdint.h
. Его можно найти в C: \ Program Files \ Microsoft Visual Studio 10.0 \ VC \ include