• 650阅读
  • 1回复

内联的问题 [复制链接]

上一主题 下一主题
在线20091001753
 

只看楼主 倒序阅读 楼主  发表于: 2023-02-26
  1. class A;
  2. class B{
  3.     A* pA;
  4.     inline QString id(){
  5.         return pA->id;
  6.     }
  7. }
  8. class A{
  9.     QString id;
  10. }

内联被要求定义在头文件,否则仅对定义的cpp有效。

可上面的代码也无法通过编译,因为 B 使用了 A 的成员,但 A 的定义却在 B 后。

实际情况是,A B 相互之间有调用,总之 B 的定义还是在 A 前比较好。

遇到这种情况怎么办?
(づ ̄ 3 ̄)づ
离线fsu0413

只看该作者 1楼 发表于: 2023-02-26
  1. class A;
  2. class B{
  3.     A* pA;
  4.     inline QString id();
  5. }
  6. class A{
  7.     QString id;
  8. }
  9. inline QString B::id(){
  10.         return pA->id;
  11. }


4条评分好评度+1贡献值+1金钱+10威望+1
20091001753 好评度 +1 !!! 2023-02-26
20091001753 贡献值 +1 !!! 2023-02-26
20091001753 威望 +1 !!! 2023-02-26
20091001753 金钱 +10 !!! 2023-02-26
快速回复
限100 字节
 
上一个 下一个