gpt4 book ai didi

c++ - 找不到 VS2012 C++ 重载成员函数/声明不兼容

转载 作者:搜寻专家 更新时间:2023-10-31 01:05:41 25 4
gpt4 key购买 nike

这是我第一次真正涉足 C++,所以请多多包涵。这也是一个作业,基本上我得到了一堆垃圾 .h 和一些测试文件,但没有实现文件。我们应该创建实现文件,但由于缺少这么多功能,它自然不会编译,所以我无法使用迭代方法开始编码。所以,我正在尝试创建虚拟实现,以便我可以一次构建每个部分一个函数。我在为头文件中的这个特定函数创建匹配的“虚拟”实现时遇到了问题。我确定这是针对硬核程序员的 c++ 101,但对于第一次学习 c++ 的人来说并不是那么简单。我明白了……我的实现与原型(prototype)定义不匹配。如何获得与头文件中的函数原型(prototype)匹配的实现?请使用小词,因为我是业余爱好者。 :-)

// sequence.h
class sequence
{
public:
size_type size( ) const;

具有“虚拟”功能的实现文件。

// sequence.cpp
const sequence::size_type sequence::size()
{
return 0;
}

编译器错误:

Error   1   error C2511: 'const main_savitch_3::sequence::size_type main_savitch_3::sequence::size(void)' : overloaded member function not found in 'main_savitch_3::sequence'  hw1\sequence1.cpp   24  1   hw1

2 IntelliSense: declaration is incompatible with "main_savitch_3::sequence::size_type main_savitch_3::sequence::size() const" (declared at line 93 of "hw1\sequence1.cpp 23 38 hw1

最佳答案

您的签名有一个返回非常量值的 const 成员函数(这非常有意义)。所以你的定义需要匹配:

sequence::size_type sequence::size() const
{
return 0;
}

关于c++ - 找不到 VS2012 C++ 重载成员函数/声明不兼容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22273421/

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