| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Размерность массива |
| Автор: Uvs 18.11.2008, 08:51 |
| Всем доброе утро! У меня маленькая проблема. Есть структура и нужно в конструкторе инициализировать массивы, чтоб в них не было "мусора" [StructLayout(LayoutKind.Sequential)] public struct PaymentInfo { [MarshalAs(UnmanagedType.ByValArray, SizeConst = 5)] public char[] CurrCode; [MarshalAs(UnmanagedType.ByValArray, SizeConst = 1)] public char[] a; [MarshalAs(UnmanagedType.ByValArray, SizeConst = 36)]public char[] Account; ........ public PaymentInfo(PaymentInfo p) { Type type = typeof(PaymentInfo); FieldInfo[] fields = type.GetFields(); foreach (var field in fields) { Type t = field.FieldType; if (t.IsArray) { Как узнать размерность каждого массива? И забить туда нужные данные? } } } } Заранее всем спасибо. |
| Автор: jorikdima 18.11.2008, 10:04 |
| Зачем вы на C# пишете unmanaged code без особой надобности? |
| Автор: Uvs 18.11.2008, 12:11 |
| потому что нужно из текстовой строки читать данные и "рассовывать" их в структуру |
| Автор: Rififi 18.11.2008, 12:19 |
| попробуй GetCustomAttributes |
| Автор: jorikdima 18.11.2008, 14:20 | ||
Мне тоже такое надо было. Но я сделал Managed и не парюсь. Использовал BitConverter, хотя не спрю, в С++ это делается гораздо более естественно. |
| Автор: Uvs 27.11.2008, 16:07 |
| Спасиб |