我当时就不乐意了 2021-07-29 14:35 采纳率: 25%
浏览 27

声明指针类,如何在调用函数时传入地址参数?

请问当声明方式为Building *b时,如何往函数中传地址参数?

class Building
{
    friend void goodgay(Building *building);
public:
    string m_s;
    Building()
    {
        this->m_s = "客厅";
        this->m_b = "卧室";
    }
private:
    string m_b;
};
void goodgay(Building *builiding)
{
    cout << builiding->m_b;
}
void fun1()/
{
    Building b;
    goodgay(&b)
} 
void fun2()
{
     Building *b;
     goodgay(b);//这里编译未出错,但是运行报错,请问该如何写。
}
void fun3()
{
    Building *b;
    goodgay(&*b);//这里编译未出错,但是运行报错,请问该如何写。
}
int main() 
{
    fun1();
    //fun2();    fun2运行后报错  。
    //fun3();    fun3运行后报错。
    return 0;
    
    
}

  • 写回答

1条回答 默认 最新

  • 快乐鹦鹉 2021-07-29 14:46
    关注
    void fun2()
    {
         Building *b = new Building();
         goodgay(b);
    }
    fun3是一样的,指针必须先分配空间才行
    
    评论

报告相同问题?

问题事件

  • 创建了问题 7月29日

悬赏问题

  • ¥15 vue使用gojs,需求在link中的虚线上添加方向箭头
  • ¥15 CSS通配符清除内外边距为什么可以覆盖默认样式?
  • ¥15 SPSS分类模型实训题步骤
  • ¥15 求解决扩散模型代码问题
  • ¥15 工创大赛太阳能电动车项目零基础要学什么
  • ¥20 limma多组间分析最终p值只有一个
  • ¥15 nopCommerce开发问题
  • ¥15 torch.multiprocessing.spawn.ProcessExitedException: process 1 terminated with signal SIGKILL
  • ¥15 QuartusⅡ15.0编译项目后,output_files中的.jdi、.sld、.sof不更新怎么解决
  • ¥15 pycharm输出和导师的一样,但是标红