<i id='7OlBK'><tr id='7OlBK'><dt id='7OlBK'><q id='7OlBK'><span id='7OlBK'><b id='7OlBK'><form id='7OlBK'><ins id='7OlBK'></ins><ul id='7OlBK'></ul><sub id='7OlBK'></sub></form><legend id='7OlBK'></legend><bdo id='7OlBK'><pre id='7OlBK'><center id='7OlBK'></center></pre></bdo></b><th id='7OlBK'></th></span></q></dt></tr></i><div id='7OlBK'><tfoot id='7OlBK'></tfoot><dl id='7OlBK'><fieldset id='7OlBK'></fieldset></dl></div>
          <bdo id='7OlBK'></bdo><ul id='7OlBK'></ul>

      1. <small id='7OlBK'></small><noframes id='7OlBK'>

        <legend id='7OlBK'><style id='7OlBK'><dir id='7OlBK'><q id='7OlBK'></q></dir></style></legend>

        <tfoot id='7OlBK'></tfoot>

        动态分配向量(或向量的向量)

        时间:2023-09-15

          <legend id='jMKU5'><style id='jMKU5'><dir id='jMKU5'><q id='jMKU5'></q></dir></style></legend>
          <tfoot id='jMKU5'></tfoot>

              <tbody id='jMKU5'></tbody>

                <bdo id='jMKU5'></bdo><ul id='jMKU5'></ul>

                  <small id='jMKU5'></small><noframes id='jMKU5'>

                  <i id='jMKU5'><tr id='jMKU5'><dt id='jMKU5'><q id='jMKU5'><span id='jMKU5'><b id='jMKU5'><form id='jMKU5'><ins id='jMKU5'></ins><ul id='jMKU5'></ul><sub id='jMKU5'></sub></form><legend id='jMKU5'></legend><bdo id='jMKU5'><pre id='jMKU5'><center id='jMKU5'></center></pre></bdo></b><th id='jMKU5'></th></span></q></dt></tr></i><div id='jMKU5'><tfoot id='jMKU5'></tfoot><dl id='jMKU5'><fieldset id='jMKU5'></fieldset></dl></div>
                  本文介绍了动态分配向量(或向量的向量)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  我需要动态分配大小在运行时给定的一维和二维数组.

                  I need to dynamically allocate 1-D and 2-D arrays whose sizes are given at run-time.

                  我设法发现"了 std::vector 并且我认为它符合我的目的,但我想问一下我写的内容是否正确和/或可以改进.

                  I managed to "discover" std::vector and I think it fits my purposes, but I would like to ask whether what I've written is correct and/or can be improved.

                  这就是我正在做的:

                  #include <vector>
                  
                  typedef std::vector< std::vector<double> > matrix;
                  
                  //... various code and other stuff
                  
                  std::vector<double> *name = new std::vector<double> (size);
                  matrix *name2 = new matrix(sizeX, std::vector<double>(sizeY));
                  

                  推荐答案

                  如您所见,在运行时给定维度时需要动态分配数组.

                  Dynamically allocating arrays is required when your dimensions are given at runtime, as you've discovered.

                  然而,std::vector 已经是这个过程的wrapper,所以动态分配向量就像一个双重肯定.这是多余的.

                  However, std::vector is already a wrapper around this process, so dynamically allocating vectors is like a double positive. It's redundant.

                  直接写(C++98):

                  Just write (C++98):

                  #include <vector>
                  
                  typedef std::vector< std::vector<double> > matrix;
                  matrix name(sizeX, std::vector<double>(sizeY));
                  

                  或(C++11 及更高版本):

                  or (C++11 and later):

                  #include <vector>
                  
                  using matrix = std::vector<std::vector<double>>;
                  matrix name(sizeX, std::vector<double>(sizeY));
                  

                  这篇关于动态分配向量(或向量的向量)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:C++ 试图交换向量中的值 下一篇:std::vector 向下调整大小

                  相关文章

                  最新文章

                  • <bdo id='6ea7T'></bdo><ul id='6ea7T'></ul>
                1. <legend id='6ea7T'><style id='6ea7T'><dir id='6ea7T'><q id='6ea7T'></q></dir></style></legend>

                    <i id='6ea7T'><tr id='6ea7T'><dt id='6ea7T'><q id='6ea7T'><span id='6ea7T'><b id='6ea7T'><form id='6ea7T'><ins id='6ea7T'></ins><ul id='6ea7T'></ul><sub id='6ea7T'></sub></form><legend id='6ea7T'></legend><bdo id='6ea7T'><pre id='6ea7T'><center id='6ea7T'></center></pre></bdo></b><th id='6ea7T'></th></span></q></dt></tr></i><div id='6ea7T'><tfoot id='6ea7T'></tfoot><dl id='6ea7T'><fieldset id='6ea7T'></fieldset></dl></div>

                    1. <tfoot id='6ea7T'></tfoot>

                      <small id='6ea7T'></small><noframes id='6ea7T'>