C++ Primer阅读笔记
文章平均质量分 76
Moyuu233
致力于成为一名优秀的代码搬运工
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++动态内存分配与智能指针
C++中的所有对象都执行严格的生存期。对于非动态对象,全局对象在程序启动时分配,在程序结束时销毁。对于局部自动对象,当我们进入其定义所在的程序块时被创建,在离开块时销毁。局部static对象在第一次使用前分配,在程序结束时销毁。除此之外,C++还支持动态分配对象,动态分配的对象的生存期与在哪里创建是无关的,只有当显式地被释放时,这些对象才会被销毁。非动态创建的对象,一般分配在静态内存和栈内存中,静态内存用来保存局部static对象,类static数据成员以及定义在任何函数之外的变量。原创 2025-02-05 21:14:59 · 494 阅读 · 0 评论 -
C++函数简介
return语句返回值的类型必须与函数的返回类型相同,或者能隐式地转换成函数的返回类型。当执行指针拷贝操作时,拷贝的是指针的值。因为不能拷贝数组,所以我们无法以值传递的方式使用数组参数,因为数组会被转换为指针,所以当我们为函数传递一个数组时,实际传递的是指向数组首元素的指针。它们对函数而言是“局部”的,仅在函数的作用域内可见,同时局部变量还会隐藏在外层作用域中同名的其他声明。返回一个值的方式和初始化一个变量或形参的方式完全一样:返回的值用于初始化调用点的一个临时量,该临时量就是函数调用的结果。原创 2025-02-05 21:09:30 · 856 阅读 · 0 评论 -
类的自动转换和强制类型转换
类型转换 内置类型转换:将一个标准类型变量的值赋给另一个标准类型的变量时,如果这两种类型兼容,则c++自动将这个值转变为接收变量的类型。 eg: long cout=8; //int型的8将被转换为long double time =11; // int型的11将被转换为double int side=3.33 //double类型的3.33将被转换为int的3 上述赋值语句都是可行的,因为在c++看来,各种数值类型都表示相同的东西——一个数字。 类的强制类型转换 #in...原创 2021-01-05 15:58:54 · 165 阅读 · 0 评论 -
C++ 友元
友元 C++控制对类对象数据的私有访问,通常情况下,公有方法提供唯一的访问途径,有时由于这种限制太严格,以致于不适合特定的编程问题。在这种情况下,C++提供了一种形式访问权限:友元 友元有三种: 友元函数 友元类 友元成员函数 通过让函数成为类的友元,可以赋予该函数与类的成员函数相同的访问权限。以下主要介绍友元函数 创建友元函数 创建友元函数的第一步是将其原型放在类声明中,并在原型中附上friend关键字 eg:friend Time operator*(double m,const .原创 2020-12-16 22:28:50 · 194 阅读 · 0 评论 -
C++运算符重载
运算符重载 运算符重载是一种形式的C++多态。c++能够使用户定义多个名称相同但特征标(参数列表)不同的函数。这种被称为函数重载或者函数多态,旨在能用同名的函数来完成相同的操作。运算符重载也是如此。例如*号操作既可用于做指针地址,又可用于做两个数之间的乘法操作。C++会根据操作数的数目和类型来决定采用哪种操作。 重载运算符方式:operatorop(argument-list) eg:operator+() 重载+号运算符,operator *()重载*号运算符。op必须为有效的运算符。 以下.原创 2020-12-16 20:19:33 · 1263 阅读 · 0 评论 -
对象与类
面向对象编程(OOP)特性 抽象 封装和数据隐藏 多态 继承 代码的可重用性 类规范的组成 类声明:以数据成员的方式描述数据部分,以成员函数(被称为方法)的方式描述公有接口。 类方法定义:描述如何实现类成员函数。 类和结构体最大的区别在于:结构体的默认访问类型是public,而类为private *如果函数定义位于类声明中,那么函数将自动成为内联函数 *所创建的每一个对象都有自己的存储空间,用于存储其内部变量和类成员;但是同一个类的所有对象共享同一组类方法,即每一种方...原创 2020-12-12 16:43:42 · 132 阅读 · 0 评论
分享