2013-10-03 2 views
3

나는 다음과 같은 문자열과 정수를 연결하는 것을 시도하고있다 : 내가 잘못C++에서 문자열과 정수를 어떻게 연결합니까?

어떤 아이디어
error: invalid operands to binary expression ('basic_string<char, std::char_traits<char>, std::allocator<char> >' 
     and 'int') 
     string truckString = "Manufacturer's Name: " + name + ", Model Name: " + model + ", Model Year: " + year ", Miles... 

일을 할 수있는 무엇을 :이 오류를 얻고있다

#include "Truck.h" 
#include <string> 
#include <iostream> 

using namespace std; 

Truck::Truck (string n, string m, int y) 
{ 
    name = n; 
    model = m; 
    year = y; 
    miles = 0; 
} 

string Truck :: toString() 
{ 

    string truckString = "Manufacturer's Name: " + name + ", Model Name: " + model + ", Model Year: " + year ", Miles: " + miles; 
    return truckString; 
} 

? 저는 C++을 처음 접했습니다.

+3

'std :: to_string' 또는 스팅 스트림을 사용하십시오. – chris

+0

@chris, 난이 오류가 발생했습니다 : 오류 : 네임 스페이스 'std'에서 'to_string'이라는 멤버가 없습니다 – user1471980

+0

오늘이 문제가 발생하여 컴파일러 설정에 따라 액세스 권한이 없을 수도 있습니다. 어떤 이유로 'to_string'. 'int'에서'string'으로의 변환을위한 stringstreams를보십시오 : http://www.cplusplus.com/articles/D9j2Nwbp/ – TopGunCoder

답변

14

: C에서

std::ostringstream stream; 
stream << "Mixed data, like this int: " << 137; 
std::string result = stream.str(); 

을 + +11 일 경우 std::to_string 함수를 사용할 수 있습니다.이 함수는 편리하게는 <string>으로 선언됩니다.

std::string result = "Adding things is this much fun: " + std::to_string(137); 

희망이 있습니다.

1
std::stringstream s; 
s << "Manufacturer's Name: " << name 
    << ", Model Name: " << model 
    << ", Model Year: " << year 
    << ", Miles: " << miles; 

s.str(); 
+0

코드가 4 칸 들여 쓰기되었는지 확인하거나 CTRL + K를 눌러 자동으로 들여 쓰기하십시오. 그렇지 않으면 일반 텍스트로 해석됩니다. [포맷 도움말] (http://stackoverflow.com/help/formatting)을 참조하십시오. – dyp

2

사용 std::ostringstream : 다른 사람이 언급 한 것처럼, 당신이 <sstream>에 정의 된 ostringstream 유형, 사용할 수있는 C++ 03에서

std::string name, model; 
int year, miles; 
... 
std::ostringstream os; 
os << "Manufacturer's Name: " << name << 
     ", Model Name: " << model << 
     ", Model Year: " << year << 
     ", Miles: " << miles; 
std::cout << os.str();    // <-- .str() to obtain a std::string object 
관련 문제