小编Mar*_*rco的帖子

给定一个nxn邻接矩阵,如何计算图中三角形的数量(Matlab)?

我写了一个函数,给定n,生成随机nxn邻接矩阵.我想知道是否有办法计算矩阵所代表的图形中的三角形数量.

matlab

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

列表初始化带有2个char []指针的向量<string>

我正在从命令行运行C++ 11程序,如此

marco @ host $ ./program.out a bb ccc

用于生成可执行文件的.cpp文件如下所示:

#include<iostream>
#include<vector>
#include<string>

int main(int argc, char* argv[]){
  std::vector<std::string> strs = {argv + 1, argv + argc};
  std::cout << strs[2] << endl;
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我运行它时,它输出ccc.我没想到,因为列表初始化程序只包含char*类型的两个元素.我之前看过这样的列表内容:

vector<string> strs = {"str1", "str2", ..., "strN"};
Run Code Online (Sandbox Code Playgroud)

但指针init对我来说是全新的.似乎指针被视为开始和结束迭代器.我的问题是,编译器如何知道从argv + 1迭代到argv + argc来初始化strs中的各个字符串?只是为了把事情放在上下文中,有没有办法在C中以类似的方式使用列表初始化来初始化char*数组?

c++ pointers

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

标签 统计

c++ ×1

matlab ×1

pointers ×1