![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| Uvs |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 69 Регистрация: 8.8.2007 Где: Челябинск Репутация: нет Всего: нет |
Всем доброе утро! У меня маленькая проблема.
Есть структура и нужно в конструкторе инициализировать массивы, чтоб в них не было "мусора" [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) { Как узнать размерность каждого массива? И забить туда нужные данные? } } } } Заранее всем спасибо. Это сообщение отредактировал(а) Uvs - 18.11.2008, 08:54 |
|||
|
||||
| jorikdima |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 18.1.2008 Где: Там, где Зенит Репутация: нет Всего: нет |
Зачем вы на C# пишете unmanaged code без особой надобности?
|
|||
|
||||
| Uvs |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 69 Регистрация: 8.8.2007 Где: Челябинск Репутация: нет Всего: нет |
потому что нужно из текстовой строки читать данные и "рассовывать" их в структуру
|
|||
|
||||
| Rififi |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: 5 Всего: 36 |
попробуй GetCustomAttributes
|
|||
|
||||
| jorikdima |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 18.1.2008 Где: Там, где Зенит Репутация: нет Всего: нет |
Мне тоже такое надо было. Но я сделал Managed и не парюсь. Использовал BitConverter, хотя не спрю, в С++ это делается гораздо более естественно. |
|||
|
||||
| Uvs |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 69 Регистрация: 8.8.2007 Где: Челябинск Репутация: нет Всего: нет |
Спасиб
|
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |