|
-1 / 0 / 0
Регистрация: 26.05.2015
Сообщений: 14
|
|||||||||||
Как обьявить статические поля класса в глобальной области?16.12.2015, 18:14. Показов 4489. Ответов 10
Метки нет (Все метки)
У класса есть статическое поле, определение должно находиться за пределами объявления класса. Как мне это сделать?
Как мне объявить статическое поле типу коллекции IDictionary?
0
|
|||||||||||
| 16.12.2015, 18:14 | |
|
Ответы с готовыми решениями:
10
Как правильно инициализировать статические поля класса Видимость констант из глобальной области внутри класса Статические поля класса |
|
Администратор
|
|||||||||||||||||
| 20.12.2015, 10:54 | |||||||||||||||||
По теме: в коде много проблем. Во-первых: использование статических (в CLR-смысле) переменных как глобальных запрещено и не имеет смысла. К статической переменной можно обратиться, не создавая экземпляр класса
gcnew создаёт управляемые указатели, их нужно обозначать шапкой (^). В-третьих, создать экземпляр интерфейса (которым является IDictionary`2) невозможно. Интерфейс - это соглашение между пользователем кода и его автором, он не содержит реализации. Можно использовать приведение типов
1
|
|||||||||||||||||
|
-1 / 0 / 0
Регистрация: 26.05.2015
Сообщений: 14
|
||||||
| 20.12.2015, 20:39 [ТС] | ||||||
|
А можно создать коллекцию Dictionary(или ArrayList) со своим типом Type_A?
Что-то вроде(Только у меня выдает ошибку):
0
|
||||||
|
Администратор
|
|||||||
| 20.12.2015, 20:51 | |||||||
|
Давайте пока отвлекёмся от использования
IDictionary, к тому же, не совсем ясно, зачем использовать именно интерфейс. В примерах буду указывать простой словарь (Dictionary`2)Да, можно хранить экземпляры своего класса, но нужно указывать соответствующий конструктор
Type_A - ссылочный (объявлен как ref class).List<T>
1
|
|||||||
|
-1 / 0 / 0
Регистрация: 26.05.2015
Сообщений: 14
|
||||||
| 20.12.2015, 21:44 [ТС] | ||||||
|
Спасибо. Type_A не ссылочный. Честно говоря он вообще написаный в .h файле с пространством имён ::std.
У меня есть "логика" программы(если это так можно назвать) - она написана в пространстве имен ::std и есть графический интерфейс Windows Forms - namespace ::System. Как мне организовать их взаимодействие. Я пытаюсь написать класс что-то вроде адаптера, но вот не получается. Например, метод который вместо поля класса std::vector будет возвращать коллекцию с пространства имен System(В данном случае ArrayList)
Добавлено через 1 минуту tezaurismosis, И вообще возможно ли организовать взаимодействие?
0
|
||||||
|
Администратор
|
|
| 20.12.2015, 23:09 | |
|
Naksiboy, пока суть не до конца ясна, приведите побольше кода.
Если тип, который вы хотите хранить в списке, написан для чистого C++ (т.е. неуправляемый, без слов ref или value в сигнатуре), то для него придётся писать тип-обёртку - неуправляемые типы нельзя хранить в управляемых объектах.
1
|
|
|
-1 / 0 / 0
Регистрация: 26.05.2015
Сообщений: 14
|
|
| 20.12.2015, 23:12 [ТС] | |
|
tezaurismosis, Можно вам в ЛС написать?? Там кода много и это кажется будет не по теме форума.
0
|
|
|
Администратор
|
|
| 20.12.2015, 23:16 | |
|
Naksiboy, не стоит.
Весь код приводить не нужно, только классы, которые вы хотите использовать из форм. Необязательно всю реализацию, меня интересует декларация класса и пара-тройка используемых методов или полей. Всё равно с проектом я ничего сейчас не сделаю, я на линуксе.
0
|
|
|
-1 / 0 / 0
Регистрация: 26.05.2015
Сообщений: 14
|
||||||
| 20.12.2015, 23:26 [ТС] | ||||||
|
tezaurismosis, Хорошо, вот часть кода:
Добавлено через 1 минуту tezaurismosis, Есть класс Film и есть класс ListOfFilms список фильмов. Оперировать нужно Списком фильмов.
0
|
||||||
|
Администратор
|
||||||
| 21.12.2015, 15:04 | ||||||
|
Чтобы весь код не переписывать, можно даже тип-оболочку не делать, а пойти иным путём.
К примеру, вам нужно только вывести список фильмов. Пусть на форме для этого есть listBox1Ничего не меняете в своём коде, получаете список как есть
1
|
||||||
|
-1 / 0 / 0
Регистрация: 26.05.2015
Сообщений: 14
|
|||||||
| 23.12.2015, 04:09 [ТС] | |||||||
|
tezaurismosis, Спасибо большое. Выводит всё отлично.
Добавлено через 17 минут
0
|
|||||||
| 23.12.2015, 04:09 | |
|
Помогаю со студенческими работами здесь
11
Не статические поля в статическом методе класса
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|