我试图使用以这种方式定义的结构:
在文件编号1中定义了结构(我无法修改此文件):
struct prueba
    {
        prueba(int const & a_):a(a_)
        {};
        int a;
    };
然后在头文件中,struct被声明为类的变量:
prueba st_prueba;
然后在源文件中,结构的构造函数在类的成员函数中调用:
st_prueba(3);
我收到了下一个错误:
错误:没有匹配函数来调用'main():: prueba :: prueba()'
我在其他问题中看到了这个问题的答案:
他们说你必须添加默认构造函数.但是在我的情况下,我无法控制结构的定义.
这个想法是有两个不同的步骤,以便将声明放在一个文件中,并在另一个文件中调用构造函数.
我该怎么做才能使用这段代码?
如果没有默认构造函数,则必须调用现有构造函数.这就是你目前没有做的事情.但这应该工作:
prueba st_prueba(3);
| 归档时间: | 
 | 
| 查看次数: | 262 次 | 
| 最近记录: |