String和int类型的连接(声明!)

时间:2014-10-18 18:00:14

标签: c++

我想提供一个唯一的ID号,该ID号等于创建类船的对象的次数 因此我尝试了我从java中知道的代码(但不幸的是它没有工作)

名称由父类车辆继承 我想在GNU c ++编译器(和仅声明)

中实现一个实现
#include <iostream>
static int id = 0;

class Ship:private Vehicle
{
    Ship()
    {
        id++;
        this->name="Pirate"+id;
    }
}

3 个答案:

答案 0 :(得分:3)

// C++98

Ship() {
  std::ostringstream tmp;
  tmp << "Pirate" << ++id;
  name = tmp.str();
}

// C++11

Ship() : name("Pirate" + std::to_string(++id)) {}

答案 1 :(得分:2)

如果数据成员名称的类型为std::string,那么您可以编写

this->name = "Pirate" + std::to_string( id );

答案 2 :(得分:1)

您需要先将int转换为字符串。将id替换为std::to_string(id)