构造对象时出现“无法将参数从 '[classname](_cdecl *)(void)' 转换为 '[classname]'”错误

2024-03-13

注意:我使用的是 Visual Studio 2010。

这里有两个重要的类,Date 和 Directory。

class Date
{
private:
    int month, day, year;
public:
    Date();
    Date(int month, int day, int year);
};

class Directory : public [Superclass]
{
private:
    File* fileContents[50];
    Directory* dirContents[5];
public:
    Directory();
    Directory(char* name, 
        long size, 
        Date dateCreated, 
        Date dateModified,
        Date dateAccessed,
        int attributes);
};

我进一步定义了构造函数 -Date构造函数的工作方式就像你想象的那样。现在我reallyC++ 新手,所以我什至无法理解我收到的错误消息。如果我尝试使用默认构造函数Directory,我收到此错误消息:

error LNK2019: unresolved external symbol "class Directory __cdecl d(void)" (?d@@YA?AVDirectory@@XZ) referenced in function _main

如果我尝试使用 3 来实现Date对象,使用以下代码:

int main()
{
    Date d1();
    Date d2();
    Date d3();
    Directory d("Hello", 12, d1, d2, d3, 0);
    cout << d;
}

这些是我的错误消息:

error C2664: 'Directory::Directory(char *,long,Date,Date,Date,int)' : cannot convert parameter 3 from 'Date (__cdecl *)(void)' to 'Date'

智能感知:no instance of constructor "Directory::Directory" matches the argument list

编辑:因此,为了持续努力使我的意义为零,VS 决定在三个时很好地编译我的程序Date参数是用创建的Date da[3]构造函数的参数是("Hello", 12, d[0], d[1], d[2], 0).


根据标准

其初始值设定项是一组空括号的对象,即 ()、 应进行值初始化。

[注意:由于初始化器的语法不允许 (),

X a ();

不是类 X 的对象的声明,而是 不带参数并返回 X 的函数声明。 form () 在某些其他初始化上下文中是允许的(5.3.4, 5.2.3、12.6.2)。 ——尾注]

因此,您需要按如下方式更改声明

int main()
{
    Date d1;
    Date d2;
    Date d3;
    Directory d("Hello", 12, d1, d2, d3, 0);
    cout << d;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

构造对象时出现“无法将参数从 '[classname](_cdecl *)(void)' 转换为 '[classname]'”错误 的相关文章

  • 如何在 ASP.NET MVC 中将 XML 文件发送到客户端

    在 ASP NET MVC 中 我有一个数据库表 我想在某个视图页面上有一个按钮 如果某个用户单击该按钮 我的应用程序将生成包含数据库中所有行的 XML 文件 然后 应将包含 XML 的文件发送到客户端 以便用户看到下载弹出窗口 同样 我希
  • strtok() 使用安全吗[重复]

    这个问题在这里已经有答案了 我读到了很多负面的东西strtok 有人说它已经过时 有人说它不是线程安全的 等等 那么真相是什么 我可以使用吗strtok 它是线程安全的吗 Note 我正在使用 Visual C 您可以使用它 它是标准库的一
  • Boost MPI 在监听列表时不会释放资源?

    这是一个后续问题如何释放 boost mpi request https stackoverflow com questions 44078901 how do i free a boostmpirequest 我在监听列表而不是单个项目时
  • C# 中类似图的实现

    所以我有一个对象 我们称之为 Head 它有一个对象列表 C C1 C2 C3 T T1 T2 和 M M1 M2 并且所有这些都是相互关联的 例如 Head gt C1 C2 C3 T1 T2 M1 M2 T1 gt C1 C2 T2 g
  • 从发布的文件中删除 PDB 引用

    在使用任何 IDE 调试和创建文件后 我总是会查看最终的二进制可执行文件或 DLL 现在我正在尝试 Visual C 2010 寻找最佳版本 没有垃圾或不必要的引用 因此 我创建了一个包含两个项目的新解决方案 一个可执行文件及其 DLL V
  • 如何从不同的线程访问控件?

    如何从创建控件的线程以外的线程访问控件 避免跨线程错误 这是我的示例代码 private void Form1 Load object sender EventArgs e Thread t new Thread foo t Start p
  • 在 .NET Core 中从 HttpResponseMessage 转换为 IActionResult

    我正在将之前在 NET Framework 中编写的一些代码移植到 NET Core 我有这样的事情 HttpResponseMessage result await client SendAync request if result St
  • 如何在 Visual Basic DLL 和 C++ DLL 之间创建隔离/免注册 COM?

    我必须在 C DLL 中使用 VB COM DLL 我弄清楚了如何从 C DLL 访问 VB COM DLL 并且它可以工作 现在我遇到了一个问题 我必须使用隔离的 COM 免注册 COM 因为我无法在必须使用它的每台 PC 上注册 DLL
  • FluentAssertions ShouldNotThrow 无法识别异步方法/Func

    我正在尝试检查异步方法是否抛出具体异常 为此 我使用 MSTEST 和 FluentAssertions 2 0 1 我已经检查过这个关于 Codeplex 的讨论 http fluentassertions codeplex com wo
  • 使用 OleDbCommand / OleDbDataAdapter 读取 CSV 文件

    我不明白为什么 但是当我使用 OleDbDataAdapter 或 OleDbCommand 读取 CSV 文件时 在这两种情况下 生成的数据结构良好 它识别文件头中的列 但行数据都是空字符串 我之前已经成功进行过多次 CSV 处理 因此我
  • 如果finally 块包含await,为什么*有时*不会在ThreadAbortException 上执行?

    UPDATE 我不认为这个问题是重复的ThreadAbortException最后可以跳过吗 https stackoverflow com questions 18002668 can threadabortexception skip
  • linq where 子句和 count 导致 null 异常

    除非 p School SchoolName 结果为 null 否则下面的代码将起作用 在这种情况下 它会导致 NullReferenceException if ExistingUsers Where p gt p StudentID i
  • 从具有相同属性的另一个对象创建对象

    我有一个 C 对象 可以说有 20 个属性 它是数据契约的一部分 我还有另一个具有类似属性的业务实体 我想从响应对象中填充该实体 除了将一个对象的每个属性分配给另一个对象的相应属性之外 还有其他方法可以做到这一点吗 是的 看看自动映射器 h
  • 'iter' 的名称查找已更改为新的 ISO 'for' 范围

    我正在尝试编译下面的两个文件 但从编译器收到错误消息 gcc 4 3 3 Linux 错误位于带有以下符号的行 LINE WITH ERROR 我做错了什么 我该怎么改变 路易斯 g c b h b cpp b cpp In functio
  • 展开 std::reference_wrapper 的成本

    Given include
  • 为什么 C++ 标准没有将 sizeof(bool) 定义为 1?

    Size of char signed char and unsigned char由 C 标准本身定义为 1 个字节 我想知道为什么它没有定义sizeof bool also C 03 标准 5 3 3 1 说 sizeof char s
  • Unity - 在生成时获取随机颜色

    我有一个小问题 我想在我的场景中生成四边形 它们都应该有红色或绿色作为材质 但 Random Range 函数只能是 int 我该如何解决它 void SpawningSquadsRnd rndColor 0 Color red rndCo
  • 强制函数调用的顺序?

    假设我有一个抽象基类 并且我想要一个必须由派生类实现的纯虚方法 但我想确保派生方法以特定顺序调用函数 我可以做什么来强制执行它 I E base class virtual void doABC 0 virtual void A 0 vir
  • 在 LP2844Z(Zebra 打印机)上的收据中包含 PNG [重复]

    这个问题在这里已经有答案了 我正在致力于创建一个基于 HTML5 画布的签名 绘图框 目前我们在服务器上将画布保存为PNG 但可以轻松地将base64字符串保存在数据库中 现在的问题是我们如何在打印的收据上添加签名 目前我们使用 GF 字段
  • 如何通过API退出Win32应用程序?

    我有一个使用 Win32 API 编写的 C Win32 应用程序 我希望强制它在其中一个函数中退出 有没有类似的东西Exit or Destroy or Abort 类似的东西会终止它吗 哎呀呀呀呀呀呀 不要做任何这些事情 exit 和

随机推荐

  • 简单的 XML 解析 XML 到列表

    我使用 Simple XML simple xml 2 6 2 jar 来解析 xml 文件 例如
  • 哪个 MySQL 排序规则比较,例如é 和 e 相等吗?

    编辑 如果不存在这样的排序规则 如果 MySQL 有一个将字符串转换为 ASCII 等价物的函数 我可以解决它 FUNC V re Vaere 可能有几个这样的函数 每个字母表一个 这会很麻烦 但如果有效的话也是可以接受的 我需要一个 My
  • 什么是急切加载?

    什么是急切加载 我用 PHP JS 编码 但更通用的答案就可以了 我看到了很多关于 Java 和 Ruby 的问题 但我对这些语言都一窍不通 而且我发现很难阅读代码 我不知道首先应该做什么 共有三个级别 急切加载 当被要求时你会做一切 典型
  • “值初始化”是什么意思? [复制]

    这个问题在这里已经有答案了 可能的重复 以下短语在 C 中意味着什么 零初始化 默认初始化和值初始化 https stackoverflow com questions 1613341 what do the following phras
  • 在 Team Services 中的构建之间复制工件

    我们的代码被分成多个项目 项目 A 中的库随后由项目 B 使用 项目 B 再由项目 C 使用 等等 但是 我找不到在构建之间共享工件的方法 所有构建步骤都是关于发布工件的 但似乎没有一个是关于下载它们的 除了 Jenkins 下载工件 这正
  • Access 2010:连接三个表,未知错误

    我正在尝试在 SQL 查询中连接 MS Access 2010 中的三个表 SELECT Track trackName TrackIsGenre genre ContainsTracks albums FROM Track INNER J
  • 如何在苹果拒绝元数据后仅提交应用程序详细信息,以避免将应用程序添加到审核时钟

    由于演示帐户详细信息无效而导致元数据被拒绝后 我们是否可以重新提交应用程序 以避免添加回审核队列并重新启动审核时钟 As Per 此链接是 iTunes Connect 和元数据拒绝的一个简单错误 http www brynbodayle
  • 使图像空白透明,覆盖到 imshow()

    我有一个用 imshow 显示的空间数据图 我需要能够覆盖产生数据的晶格 我有一个PNG 作为黑白图像加载的晶格文件 我想要的该图像的部分 覆盖是黑线 它们是晶格 看不到线之间的白色背景 我想我需要将每个背景 白色 像素的 Alpha 设置
  • 如何简化复杂的多边形?

    最近我一直在思考如何将复杂的多边形转换为非复杂的多边形 这是怎么做到的 这就是我想做的事情 完成后我将使用 JavaScript 但任何形式的解决方案都可以 语言 算法或简单的英语 我将使用与手动绘制多边形时相同的启发式 这可能不是计算该多
  • 基本动画 HTML 和 CSS

    所以我只是一个初学者 我只是想弄清楚动画及其工作原理 我的计划是在一条直线上以无限度数 比方说 90 度 无限地移动球 以下是我想知道的几个问题 有没有更好的方法来使用具有共同规则和略有不同规则 具有不同旋转 的类 如何让球在具有不同旋转的
  • 检查变量是否是液体中的字符串或数组类型

    在 Jekyll 中你可以使用液体模板 https shopify github io liquid 我正在尝试编写一个包含网站中所有链接的导航 sitemap home demo right right left left 我想要实现的是
  • Google 地图片段在片段内返回 null

    所以我有一个包含地图片段的空片段 每当我尝试激活包含地图的片段时 我的应用程序都会崩溃并在这一行返回空指针错误 map MapFragment getFragmentManager findFragmentById R id map get
  • 在plsql中检查用户密码是否有效

    我需要检查数据库用户是否有效 我将允许用户使用以下方式更改密码ALTER命令 但在执行此操作之前 我想验证他们当前的密码 以确保他们的身份与他们所说的一致 是否可以在 pl sql 内部获取用户 密码组合并检查其是否有效 我认为 Oracl
  • Maven:存储库ID的含义

    在我的 POM 文件中 我指定了两个存储库
  • JavaFX MediaPlayer:MP4 不会在 Windows 7 上循环

    我创建了一个基本的 JavaFX 媒体播放器 在我的 Windows 10 操作系统上 一切正常 并且完全按照预期运行 private MediaPlayer initializeMediaPlayer Media media new Me
  • 在elasticsearch中,有没有办法显示文档中的哪个字段是“命中”?

    当使用elasticsearch搜索一些文档时 我想看看文档中的哪个字段是 命中 将其标记为搜索结果 是否有本地方法可以执行此操作 或者我需要在搜索客户端中执行此操作 E g GET events search q nottingham 给
  • git update-index --skip-worktree 是否会影响上游存储库?

    我自己已经使用 git 一段时间了 现在正在为我们的团队建立一个存储库 我们开发一个电子商务平台 有一些目录和文件需要忽略 例如上传目录和环境特定的配置文件 虽然配置文件位于 gitignore 上 但我想使用以下任一方法忽略上传目录 sk
  • 亚马逊 EC2 实例

    我已经使用命令行工具设置了亚马逊 EC2 实例 我已经为其创建了密钥对等 并且它已启动并正在运行 我尝试使用以下命令通过 SSH 连接到它 我在 Snow Leopard 中运行 bash ssh i ec2 keypair email p
  • 排除方法maven

    我试图将 PIT 排除在改变 I O 方法之外 例如 close 和 flush 这是我的 Maven 配置
  • 构造对象时出现“无法将参数从 '[classname](_cdecl *)(void)' 转换为 '[classname]'”错误

    注意 我使用的是 Visual Studio 2010 这里有两个重要的类 Date 和 Directory class Date private int month day year public Date Date int month