gpt4 book ai didi

c++ - 为什么我在不同的文件中没有得到构造函数的实例匹配下面代码的参数列表?

转载 作者:行者123 更新时间:2023-11-30 04:52:38 25 4
gpt4 key购买 nike

客户端函数

void main()
{
using namespace std;
double a = 4.0;
double b = 5;
COMPLEX::Complex cmplxone(4.0,5.0);
}

复杂类

#ifndef Complex_HEADER_H_
#define Complex_HEADER_H_

#include <iostream>

namespace COMPLEX
{
class Complex
{
public:
enum MODE { RECT, POLAR };
private:
//object consists of four parts
double realpart; //user enters this either rectangular or polar
double imaginarypart; //user enters this either rectangular or polar
double angle;
double magnitude;
MODE mode;
//private functions
void setangle();
void setmag();
// Complex topolar() const;
// void torectangular();
//public functions
public:
Complex(); //Default constructor
Complex(double, double, MODE);

我的 Complex 非默认构造函数有 3 个参数。

当我定义一个对象时:cmplxone(4.0,5.0) 它说没有构造函数的实例匹配第一个参数的参数列表。

最佳答案

您的构造函数只有 3 个参数,您只指定了 2 个。

您必须创建一个接受 2 个参数的新构造函数或将第三个参数添加到您的方法调用中。

--编辑--

您可以使第三个参数可为空,然后如果参数为空则使用默认值,否则使用该参数。

另一种解决方案是创建一个接受两个 double 值的新构造函数,并在该构造函数中创建并设置默认值。

关于c++ - 为什么我在不同的文件中没有得到构造函数的实例匹配下面代码的参数列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54280497/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com