Questions tagged «vector»

向量是一维数组:它包含可以使用整数索引访问的组件。在某些语言中,矢量的大小可以根据需要增大或缩小,以适应创建矢量后添加和删除项目的需要。使用“矢量图形”进行图形显示。

4
向量是通过值传递还是通过C ++中的引用传递给函数
我在用C ++编写代码。如果我有一些函数,void foo(vector<int> test)并且在程序中调用了该函数,则该矢量将通过值或引用传递吗?我不确定,因为我知道向量和数组相似,并且类似的函数void bar(int test[])会通过引用(指针?)而不是值通过测试。我的猜测是,如果我想避免按值传递,但我不确定必须通过指针/引用传递向量。
94 c++  arrays  vector 




1
为什么libc ++的vector <bool> :: const_reference不是bool?
第23.3.7节vector&lt;bool&gt;[vector.bool] 类的第1段规定: template &lt;class Allocator&gt; class vector&lt;bool, Allocator&gt; { public: // types: typedef bool const_reference; ... 但是,使用libc ++时,该程序无法编译: #include &lt;vector&gt; #include &lt;type_traits&gt; int main() { static_assert(std::is_same&lt;std::vector&lt;bool&gt;::const_reference, bool&gt;{}, "?"); } 此外,我注意到C ++标准在此规范中一直到C ++ 98都是一致的。而且我还要指出,自从首次引入libc ++以来,libc ++一直未遵循此规范。 这种不符合的动机是什么?

7
如何创建一个空的R向量以添加新项目
我想在Rpy2模块提供的Python中使用R。我注意到R具有非常方便的[]操作,您可以通过该操作提取特定的列或行。如何通过Python脚本实现这样的功能? 我的想法是创建一个R向量并将这些需要的元素添加到该向量中,以便最终向量与R中的向量相同。我创建了一个seq(),但似乎它的起始数字为1,因此最终结果将始终为从数字1开始,这不是我想要的。那么,有没有更好的方法可以做到这一点?
92 python  r  vector  rpy2 

21
将vector <int>转换为字符串
我有一个vector&lt;int&gt;带有整数的容器(例如{1,2,3,4}),我想转换为以下形式的字符串 "1,2,3,4" 在C ++中最干净的方法是什么?在Python中,这就是我的操作方式: &gt;&gt;&gt; array = [1,2,3,4] &gt;&gt;&gt; ",".join(map(str,array)) '1,2,3,4'
92 c++  vector  tostring 


16
在棒棒糖崩溃前使用android矢量Drawables
我在Lollipop之前在Android中使用矢量可绘制对象,这些是我的某些库和工具版本: Android Studio:2.0 Android Gradle插件:2.0.0 编译工具:23.0.2 Android支持库:23.3.0 我在应用程序级别添加了此属性 Build.Gradle android { defaultConfig { vectorDrawables.useSupportLibrary = true } } 还值得一提的是,我使用了一个额外的可绘制对象,例如Android官方博客(此处的链接)中所述的LayerDrawable(layer_list),用于为外部的矢量可绘制对象设置可绘制对象app:srcCompat &lt;level-list xmlns:android="http://schemas.android.com/apk/res/android"&gt; &lt;item android:drawable="@drawable/search"/&gt; &lt;/level-list&gt; 您会发现直接引用app:srcCompat之外的矢量可绘制对象将在Lollipop之前失败。但是,当在另一个可绘制容器(例如StateListDrawable,InsetDrawable,LayerDrawable,LevelListDrawable和RotateDrawable)中引用矢量可绘制对象时,AppCompat确实支持加载矢量可绘制对象。通过使用这种 间接方式,您可以在诸如TextView的android:drawableLeft属性之类的情况下使用矢量可绘制对象,该属性通常无法支持矢量可绘制对象。 当我使用时,app:srcCompat一切正常,但是当我使用时: android:background android:drawableLeft android:drawableRight android:drawableTop android:drawableBottom 上ImageView,ImageButton,TextView或EditText之前棒棒糖,它引发厚望: Caused by: android.content.res.Resources$NotFoundException: File res/drawable/search_toggle.xml from drawable resource ID #0x7f0200a9

3
向量增长时如何执行移动语义?
我有std::vector某类的东西A。该类很简单,并定义了复制构造函数和 move构造函数。 std::vector&lt;A&gt; myvec; 如果我用A对象填充矢量(例如使用myvec.push_back(a)),则矢量的大小将增大,使用复制构造函数A( const A&amp;)实例化矢量中元素的新副本。 我能以某种方式强制A使用class的move构造函数代替beging吗?

8
vector <bool>的替代方法
正如我们所希望的那样,它vector&lt;bool&gt;已经完全损坏了,不能被视为C数组。获得此功能的最佳方法是什么?到目前为止,我想到的想法是: 使用一个vector&lt;char&gt;代替,或 使用包装器类并具有 vector&lt;bool_wrapper&gt; 你们如何处理这个问题?我需要c_array()功能。 附带的问题是,如果我不需要该c_array()方法,如果我需要随机访问,解决该问题的最佳方法是什么?我应该使用双端队列还是其他方法? 编辑: 我确实需要动态调整大小。 对于那些不知道的人,vector&lt;bool&gt;是专门的,因此每个人bool需要1位。因此,您不能将其转换为C样式的数组。 我猜“包装器”有点用词不当。我在想这样的事情: 当然,my_bool由于可能的对齐问题,我不得不读一读:( struct my_bool { bool the_bool; }; vector&lt;my_bool&gt; haha_i_tricked_you;
90 c++  stl  vector  boolean 

6
C ++中向量的初始容量
什么是capacity()的std::vector这是使用默认constuctor产生的?我知道那size()是零。我们可以声明默认构造的向量不调用堆内存分配吗? 这样,就有可能使用单个分配来创建具有任意保留的数组std::vector&lt;int&gt; iv; iv.reserve(2345);。假设由于某种原因,我不想size()在2345上启动。 例如,在Linux(g ++ 4.4.5,内核2.6.32 amd64)上 #include &lt;iostream&gt; #include &lt;vector&gt; int main() { using namespace std; cout &lt;&lt; vector&lt;int&gt;().capacity() &lt;&lt; "," &lt;&lt; vector&lt;int&gt;(10).capacity() &lt;&lt; endl; return 0; } 印刷0,10。这是规则,还是STL供应商相关?

6
为什么我不能在C ++ 11中创建Lambda向量(相同类型)?
我试图创建一个lambda向量,但是失败了: auto ignore = [&amp;]() { return 10; }; //1 std::vector&lt;decltype(ignore)&gt; v; //2 v.push_back([&amp;]() { return 100; }); //3 直到第2行,它编译正常。但是第3行给出了编译错误: 错误:没有匹配的函数调用'std :: vector &lt;main():: &lt;lambda()&gt;&gt; :: push_back(main():: &lt;lambda()&gt;)' 我不需要函数指针的向量或函数对象的向量。但是,封装真正的lambda表达式的功能对象的矢量对我有用。这可能吗?
88 c++  vector  lambda  c++11 

9
VectorDrawable-棒棒糖之前的Android版本是否可以使用?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 去年关闭。 改善这个问题 背景 我注意到,Android现在通过称为“ VectorDrawable ”的类(以及AnimatedVectorDrawable,BTW)支持某种矢量绘图。我通过查看Android-Studio的新功能找到了它。 我不知道这是否会是具有把多个文件分成多个文件夹(年底mdpi,hdpi,xhdpi,等)。那会很棒,并且在某些情况下可能会最小化应用程序的大小。 问题 我想问一些关于这门新课的问题: 是否可以在较旧的Android版本中使用它,甚至可以通过甚至包括Google支持库的库来使用它? 我不熟悉它的工作方式,但是Lollipop可以处理SVG文件吗?它可以执行SVG文件上可以实现的任何操作吗? 除了我发现的文档之外,还有使用它的示例/教程/视频吗?


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.