相关疑难解决方法(0)

什么是c_str函数的用法在c ++中

我刚开始阅读C++并发现c ++具有丰富的字符串操作功能,C没有.我正在阅读这些函数,c_str()并且从我所理解的是c_str转换了一个字符串,该字符串可能为空终止或者可能不是以空终止的字符串.这是真的吗?

任何人都可以建议我一些例子,以便我可以理解使用c_str函数??

c c++ string

58
推荐指数
6
解决办法
15万
查看次数

C-String与C++字符串的效率

C++ Primer说

对于大多数应用程序,除了更安全之外,使用库字符串而不是C样式字符串也更有效

安全是理解的.为什么C++字符串库更有效?毕竟,在它下面,是不是字符串仍然表示为字符数组?

为了澄清,作者是否谈论程序员效率(理解)或处理效率?

c++ string

35
推荐指数
4
解决办法
1万
查看次数

在多维向量中插入元素

vector<vector<int>> sort_a;
vector<int> v2;
vector<int> v3;

for (int i=0; i<4; ++i) {
v2.push_back(i);

  for (int j=0; j<4; ++j) {
  v3.push_back(j);
  sort_a.push_back(v2);
  sort_a.push_back(v3);
  }

}
Run Code Online (Sandbox Code Playgroud)

矢量sort_a应该是一个4x4数组,而输出是31x1,有很多空元素,我如何在多维向量中插入元素?

c++ vector

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

在 2D int 向量上使用 std::fill

我试图将 2D 向量中所有元素的值设置为特定值。据我所知,不能像将 memset 用于数组那样将其用于向量。因此,我必须使用 std::fill 将 2D 向量中的所有元素设置为特定值。但是,我知道如何对一维向量使用填充,如下所示。

vector<int> linearVector (1000,0);
fill(linearVector.begin(),linearVector.end(),10);
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试对 2D 矢量执行类似的操作(如下所示)时,它不起作用。

vector<vector<int> > twoDVector (100,vector <int> (100,0));
fill(twoDVector.begin(),twoDVector.end(),10);
Run Code Online (Sandbox Code Playgroud)

PS:我知道我可以轻松地设计一个嵌套的 for 循环来手动将 2D 向量的元素设置为我想要的值。然而,这在我的程序中是不可行的,因为二维向量的大小非常大,并且还有其他耗时的函数(递归函数)并行发生。

c++ vector memset fill

5
推荐指数
1
解决办法
9344
查看次数

矢量声明"预期参数声明器"

我在类的私有成员变量中有一行代码:

vector<double> dQdt(3)
Run Code Online (Sandbox Code Playgroud)

在xcode中编译时,会出现"预期参数声明符"错误.我想我提供了足够的信息.我没有看到这个声明有什么问题.

c++ vector

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

使用C++中的零初始化一个向量数组

我想要一个向量数组,其中0作为所有单个向量中的单个元素.有更有效的方法吗?这有用吗?

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(){

        int lastAnswer = 0;
        int n,q;
        cin >> n >> q;
        vector<int> seqArr[n];
        for(int i=0;i<n;i++)
        {
                fill(seqArr[i].begin(),seqArr[i].end(),0);
        }
return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ c++11

1
推荐指数
1
解决办法
136
查看次数

标签 统计

c++ ×6

vector ×3

string ×2

c ×1

c++11 ×1

fill ×1

memset ×1