c++对象指针

对象指针在使用之前必须先进行初始化。可以让它指向一个已定义的对象,也可以用new运算符动态建立堆对象。

定义对象指针的格式为:

cpp 复制代码
类名 *对象指针 = &对象;
//或者
类名 *对象指针 = new 类名(参数);

用对象指针访问对象数据成员的格式为:

cpp 复制代码
对象指针名->数据成员

用对象指针访问对象成员函数的格式为:

cpp 复制代码
对象指针名->成员函数(实参列表);

例如:对象指针应用

cpp 复制代码
class Square //正方形
{
private:
	double length; //边长
public:
	Square(double len) :length(len)//构造函数
    {}
	void show(); //输出函数
};

void Square::show()
{
    cout << "正方形边长:" << length;
    cout<< ",面积:"<<length * length << endl;
}
int main()
{
    Square s(2.5);
    Square *s1 = &s;
    s1->show();
    Square* s2 = new Square{ 3.5 }; //动态创建
    s2->show();
    delete s2; //释放动态内存

    return 0;
}

程序执行结果如下:

相关推荐
纪念 22911 分钟前
C++ 算法基础 (差分)
开发语言·c++·算法
jyOverQ3 小时前
从零学 JVM(六):垃圾回收算法详解——标记清除、标记复制与标记整理
jvm·算法
码农小河665 小时前
基于PHP的电商后台蜜罐系统
开发语言·php
starzy19905 小时前
深入理解Scala柯里化函数:函数链式变换
开发语言·scala
ShineWinsu5 小时前
对于Qt:QTreeWidget常见属性以及QTreeWidgetItem类的解析
开发语言·c++·qt·gui·客户端·多叉树·qtreewidget
落羽的落羽5 小时前
【C++】C++17的主要特性
linux·服务器·开发语言·c++·算法·机器学习
总要学点什么6 小时前
第108篇:三维特效-图片轨迹线效果——把贴图滚成一串箭头,想用它的本色反而整条消失
开发语言·javascript·ecmascript·gis·webgl·材质·cesium
金銀銅鐵7 小时前
带您看懂字节码指令(三):一行加法里有什么
java·jvm
starzy199011 小时前
深入理解Scala隐式值:编译期自动装配
开发语言·后端·scala
布莱克60511 小时前
Swift 条件语句详解:从 if 到 switch 的完整指南
开发语言·ssh·swift·switch·条件语句·guard·if