【问题标题】:Multidimensional String Array Assignment C++多维字符串数组赋值 C++
【发布时间】:2016-05-12 00:52:49
【问题描述】:

我有一个预先分配的多维字符串数组,声明如下:

std::string test[5][169] = { { },{ },{ },{ },{ } };

我需要创建一个函数,接受这样的字符串作为输入:

{"abc","dac","fab" },{"hbv","acd" },{ "ccd","ahn","agt","atr"},{"are"},{ }

并将正确的值放入数组中(正如我正在分配的那样);

问题是我不能将 2D+ 数组作为参数传递给 C++ 中的函数 并且不能像这样对多维数组进行赋值:

test= {"abc","dac","fab" },{"hbv","acd" },{ "ccd","ahn","agt","atr"},{"are"},{ };

我正在寻找一种将值正确放入数组的方法。

我也尝试过使用std::vector,我只为一维数组解决了这个问题:

std::vector<std::string> test;
test = {"abc","dac","fab" };

但我需要类似的东西

std::vector< std::vector<std::string> > test;
test = {"abc","dac","fab" },{"hbv","acd" },{ "ccd","ahn","agt","atr"},{"are"},{ };

【问题讨论】:

  • 您是否尝试像test = {},{},{},{},...' 或这样的test = {{}, {}, {}, {}, ...}; 分配。大不同。
  • 我正在做没有外部 {} 的作业,谢谢您的回复

标签: c++ arrays multidimensional-array variable-assignment


【解决方案1】:

在你的最后一行添加一对额外的大括号,你应该完成:

 test = {{"abc","dac","fab" },{"hbv","acd" },{ "ccd","ahn","agt","atr"},{"are"},{ }};

【讨论】:

  • 我错过了作业中的开始/结束{/},谢谢。
猜你喜欢
  • 2012-05-24
  • 1970-01-01
  • 1970-01-01
  • 2011-08-16
  • 1970-01-01
  • 1970-01-01
  • 2014-04-05
  • 1970-01-01
相关资源
最近更新 更多