【问题标题】:c++ array of pointer to string and append() methodc++ 指向字符串的指针数组和 append() 方法
【发布时间】:2020-02-16 21:35:58
【问题描述】:

我想要一个指向字符串的指针数组。

std::string *part [n];

我也有对象女巫有返回字符串的方法,

我们来命名吧:

object1.getText();

当我想将部分字符串获取到数组的元素时,这不是问题:

std::string h = object1.getText().substr(0,5) 
array[0] = &h;

但是如何将一些文本附加到现有元素?

我尝试过的东西:

std::string hh = object1.getText().substr(6) 
array[0].append(&hh);

没用。

【问题讨论】:

  • 未来的错误:array[0] = &object1.getText().substr(0,5); string 返回的 string 持续时间不足以使指向它的指针变得有意义。
  • std::string::append 没有接受指向string 的指针的重载。 array[0].append(...) 应该是 array[0]->append(...) 因为 array [0] 是一个指针。我建议您再次阅读教科书中关于指针语法的部分并阅读一些示例。
  • 好吧,我的错现在很清楚了,谢谢@user4581301

标签: c++ arrays string pointers


【解决方案1】:

感谢@user4581301,解决办法是

std::string *part [n];

std::string h = object1.getText().substr(0,5) 
array[0] = &h;

std::string hh = object1.getText().substr(6);
array[0]->append(hh);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-28
    • 2011-08-27
    • 2012-02-08
    • 2014-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多