Я получаю ошибкуРавенство вопрос оператора (C++)
не подходит для 'оператора ==' в 'MyNestedClassPointer-> MyClass :: MyNestedClass :: NestedVar == s'
Где s - ссылка на строку, а NestedVar - указатель на строку. Оскорбительная строка кода - это оператор if, сравнивающий эти два, чтобы убедиться, что они идентичны.
if(thePointer->theVar == s)
У меня нет перегруженных операторов, но я не думаю, что у меня должна быть потребность в них, видя, как они только строковые указатели, мы имеем дело с. Теперь исправьте меня, если я ошибаюсь, так как я немного ржавый, но не могу ли я это сделать?
если NestedVar является указателем, он должен быть разыменовываются ('*' оператор) перед тем, как выполнить сравнение, в противном случае вы сравниваете указатель с string, когда вы хотите сравнить строку, указанную в строке, с строкой. – goji
Вы также можете предоставить объявления для двух переменных в своем вопросе. – goji
Какой тип '' '? 'char *' или 'std :: string' –