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;
}

程序执行结果如下:

相关推荐
代码小书生3 分钟前
statistics,一个统计的 Python 库!
开发语言·python
摇滚侠7 分钟前
整洁的桌面和任务栏 Java 开发工程师提效方法
java·开发语言
知识分享小能手17 分钟前
R语言入门学习教程,从入门到精通,R语言数据计算与分组统计(9)
开发语言·学习·r语言
笑鸿的学习笔记31 分钟前
qt-C++语法笔记之Qt Graphics View 框架中的类型辨析完全指南
c++·笔记·qt
山居秋暝LS31 分钟前
安装C++版opencv和opencv_contrib
开发语言·c++·opencv
老陈说编程1 小时前
12. LangChain 6大核心调用方法:invoke/stream/batch同步异步全解析,新手也能轻松学会
开发语言·人工智能·python·深度学习·机器学习·ai·langchain
014-code1 小时前
Java 并发中的原子类
java·开发语言·并发
alphageek81 小时前
Matlab linspace函数完全指南:从基础用法到进阶技巧
开发语言·其他·matlab
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题】【Java基础篇】第29题:静态代理和动态代理的区别是什么
java·开发语言·后端·面试·代理模式
善恶怪客1 小时前
Java-数组和可变参数
java·开发语言