标签: vector

将vector <int>转换为字符串

我有一个vector<int>有整数的容器(例如{1,2,3,4}),我想转换为表格的字符串

"1,2,3,4"
Run Code Online (Sandbox Code Playgroud)

在C++中最干净的方法是什么?在Python中,我就是这样做的:

>>> array = [1,2,3,4]
>>> ",".join(map(str,array))
'1,2,3,4'
Run Code Online (Sandbox Code Playgroud)

c++ vector tostring

85
推荐指数
8
解决办法
9万
查看次数

如何创建空R矢量以添加新项目

我想在Python中使用R,由模块Rpy2提供.我注意到R具有非常方便的[]操作,您可以通过它来提取特定的列或行.我怎么能通过Python脚本实现这样的功能?

我的想法是创建一个R向量并将那些想要的元素添加到这个向量中,这样最终的向量与R中的相同.我创建了一个seq(),但似乎它有一个初始数字1,所以最终结果总是从数字1开始,这不是我想要的.那么,有更好的方法吗?

python r vector rpy2

85
推荐指数
5
解决办法
22万
查看次数

为什么我的矢量可绘制缩放不符合预期?

我试图在我的Android应用程序中使用矢量drawables.来自http://developer.android.com/training/material/drawables.html(强调我的):

在Android 5.0(API Level 21)及更高版本中,您可以定义矢量drawable,可以在不丢失定义的情况下进行缩放.

使用这个drawable:

<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:height="24dp"
android:width="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path android:fillColor="@color/colorPrimary" android:pathData="M14,20A2,2 0 0,1 12,22A2,2 0 0,1 10,20H14M12,2A1,1 0 0,1 13,3V4.08C15.84,4.56 18,7.03 18,10V16L21,19H3L6,16V10C6,7.03 8.16,4.56 11,4.08V3A1,1 0 0,1 12,2Z" />
Run Code Online (Sandbox Code Playgroud)

和这个ImageView:

<ImageView
    android:layout_width="400dp"
    android:layout_height="400dp"
    android:src="@drawable/icon_bell"/>
Run Code Online (Sandbox Code Playgroud)

尝试以400dp显示图标时(在大约2015年左右的移动设备上运行棒棒糖的高分辨率),会产生这种模糊的图像:

blurryBellIcon

将矢量drawable的定义中的宽度和高度更改为200dp可显着改善400dp渲染大小的情况.但是,将此设置为TextView元素的drawable(即文本左侧的图标)现在会创建一个巨大的图标.

我的问题:

1)为什么矢量可绘制中有宽度/高度规格?我认为这些问题的全部意义在于它们无损扩大和缩小,其宽度和高度在其定义中毫无意义?

2)是否可以使用单个矢量drawable,它在TextView上作为24dp可绘制,但可以很好地扩展以使用更大的图像?例如,我如何避免创建不同大小的多个矢量绘图,而是使用一个可以扩展到渲染要求的​​矢量绘图?

3)如何有效地使用width/height属性以及viewportWidth/Height的区别是什么?

额外细节:

  • 设备正在运行API 22
  • 将Android Studio v1.5.1与Gradle 1.5.0版一起使用
  • 清单是编译和目标级别23,最低级别15.我也尝试将最小级别移动到21,但这没有任何区别.
  • 解压缩APK(最小级别设置为21)在可绘制文件夹中显示单个XML资源.不会生成栅格化图像.

scaling android vector drawable

85
推荐指数
5
解决办法
6万
查看次数

VectorDrawable - 它是否适用于Lollipop之前版本的Android?

背景

我注意到Android现在支持某种矢量绘图,通过一个名为" VectorDrawable " 的类(以及AnimatedVectorDrawable,BTW).我通过查看Android-Studio上的新功能找到了它.

我不知道这是否会是具有把多个文件分成多个文件夹(年底mdpi,hdpi,xhdpi,等).这将是伟大的,并可能在某些情况下最小化应用程序大小.

问题

我想就这个新课提出几个问题:

  1. 是否可以在较旧的Android版本中使用它,也许可以通过甚至是Google支持库的库?

  2. 我不熟悉它是如何工作的,但Lollipop可以处理SVG文件吗?它可以做任何可以在SVG文件上实现的东西吗?

  3. 除了我发现的文档之外,是否有使用它的示例/教程/视频?

android vector gradle android-vectordrawable

84
推荐指数
5
解决办法
5万
查看次数

为什么我不能在C++ 11中创建lambdas(相同类型)的向量?

我试图创建一个lambda矢量,但失败了:

auto ignore = [&]() { return 10; };  //1
std::vector<decltype(ignore)> v;     //2
v.push_back([&]() { return 100; });  //3
Run Code Online (Sandbox Code Playgroud)

直到第2行,它编译得很好.但第3行给出了编译错误:

错误:没有匹配函数来调用'std :: vector <main():: <lambda()>> :: push_back(main():: <lambda()>)'

我不想要一个函数指针向量或函数对象向量.但是,封装真实 lambda表达式的函数对象向量对我有用.这可能吗?

c++ lambda vector c++11

83
推荐指数
5
解决办法
3万
查看次数

Android NDK中不能包含像vector这样的C++标头

当我尝试在我的Android NDK项目中包含任何类似矢量的C++类时(使用最新的NDK r5b),我得到如下错误...

Compile++ thumb : test-libstl <= test-libstl.cpp /Users/nitrex88/Desktop/Programming/EclipseProjects/STLTest/jni/test-libstl.cpp:3:18: error: vector: No such file or directory

在线报道此问题的其他人通过添加声称成功

APP_STL := stlport_static

到他们的Application.mk文件.我已经完成了这个,并尝试了APP_STL的所有其他可能的值.我已经清理到项目,运行ndk-build干净,删除了obj和libs文件夹,仍然在我编译它时找不到矢量类.我已经在这个问题上工作了好几个星期(自NDK r5问世以来),如果有人有任何建议,我会非常感激.谢谢!

android stl vector android-ndk

82
推荐指数
4
解决办法
10万
查看次数

如何将向量传递给函数?

我正在尝试将向量作为参数发送到函数,我无法弄清楚如何使其工作.尝试了一堆不同的方法,但他们都给出了不同的错误信息.我只包含部分代码,因为只有这部分不起作用.(向量"随机"填充了0到200之间的随机但排序的值)

更新了代码:

#include <iostream>     
#include <ctime>        
#include <algorithm>    
#include <vector>       

using namespace std;

int binarySearch(int first, int last, int search4, vector<int>& random);

int main()
{
    vector<int> random(100);

    int search4, found;
    int first = 0;
    int last = 99;

    found = binarySearch(first, last, search4, random);

    system("pause");    
    return(0);      
}

int binarySearch(int first, int last, int search4, vector<int>& random)
{
    do
    {
        int mid = (first + last) / 2;  
        if (search4 > random[mid]) 
            first = mid + 1;  
        else if (search4 < …
Run Code Online (Sandbox Code Playgroud)

c++ function vector

82
推荐指数
2
解决办法
25万
查看次数

如何在向量增长时强制执行移动语义?

我有一个std::vector特定类的对象A.该类非常重要,并且定义了复制构造函数移动构造函数.

std::vector<A>  myvec;
Run Code Online (Sandbox Code Playgroud)

如果我用A对象填充向量(使用例如myvec.push_back(a)),则向量将增大,使用复制构造函数A( const A&)来实例化向量中元素的新副本.

我可以以某种方式强制执行类的移动构造函数A而不是使用它吗?

c++ resize vector move-semantics c++11

82
推荐指数
2
解决办法
2万
查看次数

将数组转换为向量的最简单方法是什么?

将数组转换为向量的最简单方法是什么?

void test(vector<int> _array)
{
  ...
}

int x[3]={1, 2, 3};
test(x); // Syntax error.
Run Code Online (Sandbox Code Playgroud)

我想以最简单的方式将x从int数组转换为vector.

c++ arrays vector

82
推荐指数
5
解决办法
14万
查看次数

使用shared_ptr的示例?

嗨,我今天问了一个问题,关于如何在同一个向量数组中插入不同类型的对象,我的代码就是那个问题

 gate* G[1000];
G[0] = new ANDgate() ;
G[1] = new ORgate;
//gate is a class inherited by ANDgate and ORgate classes
class gate
{
 .....
 ......
 virtual void Run()
   {   //A virtual function
   }
};
class ANDgate :public gate 
  {.....
   .......
   void Run()
   {
    //AND version of Run
   }  

};
 class ORgate :public gate 
  {.....
   .......
   void Run()
   {
    //OR version of Run
   }  

};      
//Running the simulator using overloading concept
 for(...;...;..)
 {
  G[i]->Run() ;  //will run …
Run Code Online (Sandbox Code Playgroud)

c++ boost smart-pointers vector shared-ptr

81
推荐指数
3
解决办法
16万
查看次数