androidx.test.InstrumentationRegistry устарела

Это потому, что, хотя Base и Derived имеют отношение, между vector и vector нет отношения. Что касается иерархии классов, то они полностью не связаны друг с другом, поэтому вы не можете назначить их другим.

Концепция, которую вы ищете, называется ковариацией . Например, в Java String[] является подтипом Object[]. Но в C ++ эти два типа являются только разными типами и не более связаны с String[] и Bar.

push_back работает, потому что этот метод просто принимает значение T const& (или T&&), поэтому все, что может быть конвертировано в Base*, будет приемлемым - это Derived*.

Тем не менее, vector имеет конструктор, который принимает пару итераторов, которые должны быть проще использовать здесь:

vector v2(v1.begin(), v1.end());

Или, поскольку он уже построен:

v2.assign(v1.begin(), v1.end());

28
задан Morozov 22 October 2018 в 07:39
поделиться

1 ответ

Я провел много времени движущаяся зависимость с testImplementation вместо androidTestImplementation и реверс, в приложении build.gradle.

Мой отказ был то, что я создал тестовый класс в test папка вместо androidTest папка настолько добирающаяся неразрешенная ошибка для AndroidJuit4 и InstrumentationRegistry.

, Когда я сместил свой тестовый файл к androidTest, папка тогда выходит решенный с реализацией зависимости тестовых библиотек с androidTestImplementation в build.gradle.

0
ответ дан Ajay 14 October 2019 в 10:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: