错误求助:xxx的左侧必须指向类/结构/联合

isarc 2007-08-24 11:10:05
大家好:
调试程序有如下错误:
a.h
#include<b.h>
#include<structA.h>
.........
private:
a* b;
int iX;
strcutA iStrcut;
==============
b.h
#include <structA.h>
int func() const;//return iInt;
StructA funcstruct()const;//return iStruct;
iInt;
iStrcut;
............
a.cpp里面:
a::a(){b = b::construct;}
a::a'sfunc()
{
ix = a->func();//出现xxx的左侧必须指向类/结构/联合这样的错误。
iStrcut = a->funcstruct();
int vTemp = iStruct.iIntValue;//出现。。。的左侧必须有类/结构/联合类型错误
}
我搜索了一下,把以前的前向声明改成了include文件,b类会在a类之后才被执行构造,但是我会让a'sfunc()等待一会再执行,这样它就可以有数值了。函数是public,为什么会有这个错误?
...全文
1160 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
isarc 2007-08-24
  • 打赏
  • 举报
回复
指针的引用怎么使用呢?谢谢。
帮忙讲的详细些。准备揭帖。
isarc 2007-08-24
  • 打赏
  • 举报
回复
呵呵,解决了。
在静态成员函数里面不能直接调用普通的成员变量。

最后一个基本概念问题:
x* func()
{
.....
return result;//(x*)类型
}
我不想new对象了。因此使用 x*& getvalue = xxx->func();想让它来指向数据然后让它等于null就完了。
为什么会出现无法从x*转化为x*&呢?
我的想法如何实现?
tncqsy 2007-08-24
  • 打赏
  • 举报
回复
解决没
怎么这么模糊?
记住调用函数必须是对象来调用
飞哥 2007-08-24
  • 打赏
  • 举报
回复
提示你a的用法不对
混乱
isarc 2007-08-24
  • 打赏
  • 举报
回复
那么怎么在静态函数里面做我要做的呢?
isarc 2007-08-24
  • 打赏
  • 举报
回复
我写错了
a.h
#include<b.h>
#include<structA.h>
.........
private:
a* b;//应该是b *aa;
int iX;
strcutA iStrcut;
isarc 2007-08-24
  • 打赏
  • 举报
回复
我弄错了。
static a::a'sfunc()
static里面没有办法调用类成员和其它类的东西
ouyh12345 2007-08-24
  • 打赏
  • 举报
回复
ix = a->func();
a是类啊,能这样调用函数吗?
taodm 2007-08-24
  • 打赏
  • 举报
回复
模述还是太混乱,没看懂。
isarc 2007-08-24
  • 打赏
  • 举报
回复
iInt;
iStrcut;
忘记加类型定义了,请原谅
设备树(device tree)机制是Linux内核从linux-3.x版本开始引进的一种机制,目的是解决内核源码的arch/arm目录下代码混乱的问题:随着ARM生态的快速发展,在内核源码的arch/arm目录下,存放着几十种arm芯片和几百个开发板相关的源文件,很多开发板和处理器的中断、寄存器等相关硬件资源都在这个目录下以.c或.h的文件格式定义。而对于内核来说,与这些硬件耦合,会导致内核代码混乱不堪,每个开发板上运行的内核镜像都必须单独编译配置,无法通用。什么时候Linux内核能像Windows镜像那样,无论你的电脑什么配置,一个Windows安装包,都可以直接下载安装运行呢?设备树机制,实现了Linux内核和硬件平台的解耦:每个硬件平台的硬件资源使用一个设备树文件(xxx.dts)来描述,而不是在arch/arm下以.c 或 .h 文件来定义。Linux内核是一个通用的内核,在启动过程中,在通过解析设备树中的硬件资源来初始化某个具体的平台。 引入设备树后,很多和内核驱动开发的工作也发生了变化:以往驱动工程师关注的头文件宏定义、寄存器定义,现在这些基本上不用关注,关注的重点则转向了如何根据硬件平台去配置和修改设备树文件。很多驱动的编程接口也发生了变化,开始慢慢使用device tree提供的编程接口去开发驱动。本期课程主要面向嵌入式开发人员,分享Linux下驱动开发所需要的设备树知识和必备技能

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧