В C++, насколько я знаю, я считаю, что std::string
не может представлять отсутствие значения. Следовательно, в случае способа, возвращающего указатель на std::string
, например std::string *myMethod()
. Имеет ли смысл проверять, является ли возвращаемое значение из myMethod NULL
?проверить значение NULL указателя строки std:
Вариант использования, связанный с моим вопросом, следующий: метод std :: string *() был автоматически создан библиотекой-заглушкой gsoap из файла WSDL. У меня нет доступа к файлу WSDL, поэтому я не могу изменить подпись метода. Мое приложение C++ - это клиент, а сервер - это Java-приложение. Оба этих приложения взаимодействуют через веб-службы
Да, поскольку 'std :: string *' является указателем на строку, а не 'std :: string'; указатели могут быть «nullptr». –
Попробуйте nullptr Если функция возвращает указатель, тогда может потребоваться тест –
Есть ли необходимость в различии между отсутствием строки и пустой строкой? Каков ваш прецедент? –