Предположим, у меня есть следующий код:
#include <iostream>
#include <string>
#include <iomanip>
using namespace std; // or std::
int main()
{
string s1{ "Apple" };
cout << boolalpha;
cout << (s1 == "Apple") << endl; //true
}
Мой вопрос: как система проверяет эти два? s1
является объектом, а "Apple"
является строковым литералом в стиле C
Насколько я знаю, разные типы данных нельзя сравнивать. Что мне здесь не хватает?
std::string
из c-строки.