Можно ли определить ковариацию / контравариантность в универсальном интерфейсе в C ++ / CLI? - PullRequest
0 голосов
/ 05 февраля 2019

Есть хорошая статья о ковариантности и контравариантности в C #.Можно ли реализовать такой ковариантный / контравариантный интерфейс в C ++ / CLI?

Допустим, у меня есть такой код на C #:


    interface IMyGeneric<out T> { }
    interface IMyOtherGeneric<out T> { }

    class MyGeneric<T> : IMyGeneric<T> { }
    class MyOtherGeneric<T> : IMyOtherGeneric<T> { }

    void Foo(IMyGeneric<IMyOtherGeneric<string>> arg) { }

    void Bar()
    {
        var mgs = new MyGeneric<MyOtherGeneric<string>>();
        Foo(mgs);
    }

Как я могу, или я могувообще, реализовать это в C ++ / CLI?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...