清泛IT社区

搜索
App Inventor 2 中文社区 轻松创建Apps

扫码访问移动社区 移动社区,您的掌上技术专家

关注我,精彩不错过! 关注我,精彩不错过!

扫码安装最新版AI伴侣 最新版AI伴侣v2.69

Aia Store .aia 源码一站式解决方案 发布日志AI2连接测试ai2Starter模拟器

开通VIP送小红花App Inventor 2 拓展有奖征文 VIP会员享专有教程,免费赠送基础版*技术支持服务! AI2入门必读中文文档中文教程IoT专题

查看: 349|回复: 0
打印 上一主题 下一主题

error: ISO C++ forbids declaration of 'XXXX' with no type

  • TA的每日心情
    开心
    2024-02-17 18:16
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    546

    主题

    715

    帖子

    1万

    积分

    管理员

    这里没有广告...

    Rank: 9Rank: 9Rank: 9

    积分
    10689
    QQ
    跳转到指定楼层
    楼主
    发表于 2015-10-16 15:54:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    出现这个错误,一般是由于两个CPP相互都相互包含了对方的头文件造成的,比如:


    当mainwindow.cpp、configdialog.cpp两个文件,分别包含了对方的头文件,并且分别又在自己的类中声明了对象,即:


    mainwindow.cpp
    #include "configdialog.h"
    class MainWindow {
      ConfigDialog *configDialog;
    };

    configdialog.cpp
    #include "mainwindow.h"
    class ConfigDialog {
      MainWindow *mainWindow;
    };


    解决方法:在声明对象的类名称前追加关键字“class”,即修改如下:


    mainwindow.cpp
    #include "configdialog.h"
    class MainWindow {
      class ConfigDialog *configDialog;
    };

    configdialog.cpp
    #include "mainwindow.h"
    class ConfigDialog {
      class MainWindow *mainWindow;
    };

    拓展:class 修饰后,只申明,不分配内存。头文件也可省略不写,但必须是以指针的形式申明。
    class Declare;(
    class Declare *dec;(
    class Declare dec;  (×


    清泛网 - 专注IT技能提升
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    © 2024 tsingfun.com, Inc.  沪ICP备2020034476号-1  沪公网安备31011702000040号

    GMT+8, 2024-05-13 20:38 , Processed in 0.016085 second(s), 29 queries .