Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 结构推回不工作 #包括 #包括 使用名称空间std; 结构边 { int from; int到; 整数权重; }; int main() { 向量v; v、 向后推(边缘(1,2,10)); v、 向后推(边缘(2,3,30)); v、 向后推(边缘(1,3,20)); 返回0; }_C++_Vector - Fatal编程技术网

C++ 结构推回不工作 #包括 #包括 使用名称空间std; 结构边 { int from; int到; 整数权重; }; int main() { 向量v; v、 向后推(边缘(1,2,10)); v、 向后推(边缘(2,3,30)); v、 向后推(边缘(1,3,20)); 返回0; }

C++ 结构推回不工作 #包括 #包括 使用名称空间std; 结构边 { int from; int到; 整数权重; }; int main() { 向量v; v、 向后推(边缘(1,2,10)); v、 向后推(边缘(2,3,30)); v、 向后推(边缘(1,3,20)); 返回0; },c++,vector,C++,Vector,为什么push_-back函数不在向量中工作并给出错误?如何在vector中直接插入值而不定义Edge类型的变量?除了注释中提供的答案,您只需在结构中添加一个构造函数即可 #include<cstdio> #include<vector> using namespace std; struct Edge { int from; int to; int weight; }; int main() { vector<Edge>

为什么push_-back函数不在向量中工作并给出错误?如何在vector中直接插入值而不定义Edge类型的变量?

除了注释中提供的答案,您只需在结构中添加一个构造函数即可

#include<cstdio>
#include<vector>
using namespace std;

struct Edge
{
    int from;
    int to;
    int weight;

};

int main()
{
    vector<Edge> v;
    v.push_back(Edge (1,2,10));
    v.push_back(Edge (2,3,30));
    v.push_back(Edge (1,3,20));

    return 0;
   }

你犯了什么错误?他们应该给你一个错误的提示。只要使用
Edge{1,2,10}
aso.,你没有声明/定义这个构造函数签名。你从来没有定义任何
Edge
类型的变量。变量是有名字的东西。唯一的变量是
v
@KerrekSB-Huh??实际上需要变量?它应该只使用
v.push_back(Edge{1,2,10})
Edge(int f, int t, int w) {
    from = f;
    to = t;
    weight = w;
}