Родовые Обобщения в Управляемом C ++ - PullRequest
2 голосов
/ 04 декабря 2008

Я хочу создать Список из KeyValuePair s в управляемом проекте C ++. Вот синтаксис, который я использую

List<KeyValuePair<String^, String^>^>^ thing;

но я получаю следующую ошибку:

ошибка C3225: аргумент универсального типа для 'T' не может быть 'System :: Collections :: Generic :: KeyValuePair ^', это должен быть тип значения или дескриптор ссылочного типа

Я в основном хочу сделать это (C #)

List<KeyValuePair<string, string>> thing;

но в управляемом C ++. Ну и в .Net 2.0. Любой берущий?

Ответы [ 2 ]

3 голосов
/ 04 декабря 2008

Разобрался:

List<KeyValuePair<String^, String^>>^ thing;

KeyValuePair сама по себе не должна быть дескриптором. Duh.

2 голосов
/ 04 декабря 2008

KeyValuePair сама по себе не должна быть дескриптором. Duh.

Поскольку это тип значения, а не ссылочный тип (т. Е. struct вместо class в C #).

...