gpt4 book ai didi

c++ - 将类分离为 .h 和 .cpp 文件时出现“未命名类型”错误

转载 作者:行者123 更新时间:2023-11-30 01:10:15 25 4
gpt4 key购买 nike

我创建了三个简单的 C++ 文件,如下所示:rtt_hello.hpp

#ifndef RTT_HELLO_HPP
#define RTT_HELLO_HPP

#include<iostream>

class displayer
{
public:
void display();
};

#endif

然后类实现displayer.cpp

#include <iostream>
#include "rtt_hello.hpp"
void displayer::display()
{
std::cout<<"Hello";
}

最后是主程序 rtt_hello.cpp。我没有主程序,因为我想在不同的应用程序中使用该对象。

#include<iostream>
#include "rtt_hello.hpp"

displayer message1;
message1.display();

现在编译时出现错误

sambeet@Holmes ~/NewRockPort/x86/Build/rock/rtt_test $ /home/sambeet/NewRockPort/x86/Install/rtems/4.11.0-rc3/bin/i386-rtems4.11-g++ rtt_hello.cpp displayer.cpp -Ihome/sambeet/NewRockPort/x86/Build/rock/rtt_test/ 
rtt_hello.cpp:5:1: error: 'message1' does not name a type
message1.display();
^

我创建了标题并包含了它,那为什么会出现这个错误?

最佳答案

您不能只是将随机代码放入文件中(在任何函数之外)。在顶层你只能声明/定义东西。像 message1.display() 这样的表达式需要成为函数的一部分。

关于c++ - 将类分离为 .h 和 .cpp 文件时出现“未命名类型”错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38362065/

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