Форум программистов, компьютерный форум, киберфорум
C++/CLI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
0 / 0 / 0
Регистрация: 14.10.2012
Сообщений: 3

Как правильно создать управляемый массив структурного типа?

22.12.2012, 22:24. Показов 2874. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер всем ,буду краток недавно пришлось столкнуться c С++/CLI . Нужно было объявить управляемый массив структурного типа .
C++
1
2
3
4
5
6
7
8
ref struct detail{double mass,width,height,number;String^ name;String^ material;};
 
int main(array<System::String ^> ^args)
{
 array<detail^> ^c = gcnew array<detail^>(100);
 c[0]->mass = 3;
 return 0; 
}
Все компиллируется но при попытке присвоить значение
c[0]->mass = 3;
выскакивает ошибка:
Ссылка на объект не указывает на экземпляр объекта!
Гуру подскажите где собака зарыта ,так как сам новичёк ,первый семестр изучаю С++,да и гугл ничего дельного не выдаёт
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.12.2012, 22:24
Ответы с готовыми решениями:

Как создать управляемый массив координатных точек?
Во всех примерах это показано так: Point point1 = Point(10, 15); Point point2 = Point(15, 20); Point point3 = Point(5,...

Ввод информации в массив структурного типа
Доброго времени суток):) Пишу прогу по теме ПЕРЕЧИСЛЕНИЯ И СТРУКТУРЫ, дописав до определенного места столкнулся с ошибками при...

3-мерный массив с элементами структурного типа
Напишите, пожалуйста, небольшой пример ДИНАМИЧЕСКОГО трехмерного массива с элементами структурного типа. В интернете не нашел нормального...

3
 Аватар для (SkyNet)
35 / 40 / 15
Регистрация: 25.10.2011
Сообщений: 175
26.12.2012, 02:33
мб, потомучто вы присвоюете указателю значение. У вас обьявлен масив указателей.
C++
1
2
3
4
5
6
7
8
ref struct detail{double mass,width,height,number;String^ name;String^ material;};
 
int main(array<System::String ^> ^args)
{
 array<detail> ^c = gcnew array<detail>(100);
 c[0]->mass = 3;
 return 0; 
}
Неуверен, но так должно работать
1
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
27.12.2012, 02:27
(SkyNet), там же массив структур ссылочного типа, а в структуре массив (нативного типа, скорее всего)). Без определения структуры, сказать что-то сложно. Но используя слабые экстрасенсорные способности, могу предположить, что массив не объявлен как cli или объявлен но не инициализирован.
0
0 / 0 / 0
Регистрация: 07.09.2012
Сообщений: 48
02.11.2015, 17:56
Ты не выделил память под элементы массива.

ref struct detail{double mass,width,height,number;String^ name;String^ material;};

C++
1
2
3
4
5
6
7
8
9
10
11
12
int main(array<System::String ^> ^args)
{
 array<detail^> ^c = gcnew array<detail^>(100);
 
// now you need allocate memory for elements
for(int i = 0; i < 100; i++)
{
   c[i] = gcnew detail;
}
 c[0]->mass = 3;
 return 0; 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.11.2015, 17:56
Помогаю со студенческими работами здесь

Динамический массив из элементов структурного типа
Сформируйте и выведите на печать динамический массив из элементов структурного типа. Выполните поиск элементов в массиве, удовлетворяющих...

Динамический массив из элементов структурного типа
Помогите пожалуйста выполнить следующее задание: 1.Сформировать динамический массив из элементов структурного типа. стуктура : ...

Сформировать динамический массив из элементов структурного типа
1.Сформировать динамический массив из элементов структурного типа. struct реrson { char*name; char *adres; int age; }; ...

Сформировать динамический массив из элементов структурного типа
struct student { char*name; int kurs; float rating };

Создать файл структурного типа, содержащий значения функции sin (x), cos (x), tg (x) когда x изменяется от 0 д
Создать файл структурного типа, содержащий значения функции sin (x), cos (x), tg (x) когда x изменяется от 0 до 314 с шагом 0.5.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru