Как склеить строку и вывод функциии length?

266
30 июня 2017, 07:43

На с++ не могу понять как можно склеить строку сущность std::string с выводом функции length от другой переменной.

std::string str="blah blah",vstr;
vstr="text len:" + str.length() + "\n";
vstr+=str;

При компиляции выдает ошибку несоответствии типов(((

Answer 1

Если Вы используете более-менее современный компилятор, то Вам нужен std::to_string

vstr="text len:" + to_string(str.length()) + "\n";
Answer 2

Если Вы используете несовременный компилятор, то Вам нужен std::stringstream

#include <sstream>
std::stringstream stream;
stream << "text len:" << str.length() << "\n";
vstr = stream.str();

PS: Если очень хочется выглядеть современно, то можно написать свой собственный toString c азартными играми и доступными женщинами:

template<class T>
std::string toString(const T &value){
    std::stringstream stream;
    stream << value;
    return stream.str();
}

Тогда можно сделать так как предложил KoVadim

READ ALSO
Как поймать событие epoll connect в неблокированном режиме?

Как поймать событие epoll connect в неблокированном режиме?

Под windows я отлавливал событие FD_CONNECTЗдесь такого, почему то, не нашёл

203
Выбор между .load и $.get

Выбор между .load и $.get

На странице есть меню с кнопками, при нажатии на которые должен подгружаться контент из php-файлов и вставляться в соответствующие дивыСтраница...

258