当前位置: 首页 > news >正文

python 做网站 用哪个框架好四川省造价工程信息网

python 做网站 用哪个框架好,四川省造价工程信息网,长沙百度推广运营公司,网页设计项目报告总结前言 在C的世界里,面向对象编程(OOP)是核心中的核心。它不仅是一种编程范式,更是一种思考问题的方式。本文将带你从C的内存分区模型出发,深入探讨引用、函数、类和对象、继承、多态以及文件操作等核心概念。通过丰富的…

前言

在C++的世界里,面向对象编程(OOP)是核心中的核心。它不仅是一种编程范式,更是一种思考问题的方式。本文将带你从C++的内存分区模型出发,深入探讨引用、函数、类和对象、继承、多态以及文件操作等核心概念。通过丰富的代码示例和详细的讲解,帮助你快速掌握C++面向对象编程的精髓。

1. C++内存分区模型

C++程序在运行时,内存被划分为四个主要区域:代码区、全局区、栈区和堆区。每个区域都有其独特的用途和生命周期。

1.1 程序运行前:代码区与全局区

代码区:存放函数体的二进制代码,由操作系统管理。代码区是共享且只读的,防止程序意外修改指令。
全局区:存放全局变量、静态变量和常量。全局区的数据在程序结束后由操作系统释放。
示例代码:

// 全局变量
int g_a = 10;
int g_b = 10;
// 全局常量
const int c_g_a = 10;
const int c_g_b = 10;int main() {// 局部变量int a = 10;int b = 10;// 打印地址cout << "局部变量a地址为: " << (int)&a << endl;cout << "局部变量b地址为: " << (int)&b << endl;cout << "全局变量g_a地址为: " << (int)&g_a << endl;cout << "全局变量g_b地址为: " << (int)&g_b << endl;// 静态变量static int s_a = 10;static int s_b = 10;cout << "静态变量s_a地址为: " << (int)&s_a << endl;cout << "静态变量s_b地址为: " << (int)&s_b << endl;cout << "字符串常量地址为: " << (int)&"hello world" << endl;cout << "字符串常量地址为: " << (int)&"hello world1" << endl;cout << "全局常量c_g_a地址为: " << (int)&c_g_a << endl;cout << "全局常量c_g_b地址为: " << (int)&c_g_b << endl;system("pause");return 0;
}

在这里插入图片描述

1.2 程序运行后:栈区与堆区

栈区:由编译器自动分配和释放,存放函数的参数值和局部变量。注意,不要返回局部变量的地址。
堆区:由程序员手动分配和释放,若不释放,程序结束时由操作系统回收。
示例代码:

int *func() {int a = 10;return &a; // 错误:返回局部变量的地址
}int main() {int *p = func();cout << *p << endl; // 未定义行为cout << *p << endl;system("pause");return 0;
}

在这里插入图片描述

堆区示例:

int* func() {int* a = new int(10);return a;
}int main() {int *p = func();cout << *p << endl;delete p; // 释放堆区数据system("pause");return 0;
}

在这里插入图片描述

int main()
{int* arr = new int[10];int i = 0;for (i = 0; i < 10; i++){arr[i] = i + 100;}for (i = 0; i < 10; i++){cout << arr[i] << endl;}delete[] arr;system("pause");return 0;
}

在这里插入图片描述

2. 引用

引用是C++中一个非常重要的概念,它可以为变量起一个别名,简化代码并提高效率。

2.1 引用的基本使用

引用的语法是:数据类型 &别名 = 原名。
示例代码:

int main() {int a = 10;int &b = a; // 引用b是a的别名cout << "a = " << a << endl;cout << "b = " << b << endl;b = 100; // 修改b,a也会改变cout << "a = " << a << endl;cout << "b = " << b << endl;system("pause");return 0;
}

在这里插入图片描述

2.2 引用注意事项

引用必须初始化。
引用初始化后不能改变。
示例代码:

int main() {int a = 10;int b = 20;// int &c; // 错误:引用必须初始化int &c = a; // 初始化后不能更改c = b; // 赋值操作,不是更改引用cout << "a = " << a << endl;cout << "b = " << b << endl;cout << "c = " << c << endl;system("pause");return 0;
}

在这里插入图片描述

2.3 引用做函数参数

引用可以作为函数参数,让形参直接修改实参的值,避免指针的复杂性。
示例代码:

void mySwap03(int& a, int& b) {int temp = a;a = b;b = temp;
}int main() {int a = 10;int b = 20;mySwap03(a, b);cout << "a:" << a << " b:" << b << endl;system("pause");return 0;
}

在这里插入图片描述

2.4 引用做函数返回值

引用可以作为函数的返回值,但要注意不要返回局部变量的引用。
示例代码:

int& test02() {static int a = 20; // 静态变量return a;
}int main() {int& ref2 = test02();cout << "ref2 = " << ref2 << endl;test02() = 1000; // 可以通过引用修改静态变量cout << "ref2 = " << ref2 << endl;system("pause");return 0;
}

在这里插入图片描述

2.5 引用的本质

引用在C++内部实现是一个指针常量。编译器会自动处理所有的指针操作。
示例代码:

void func(int& ref) {ref = 100; // 内部转换为 *ref = 100
}int main() {int a = 10;int& ref = a; // 自动转换为 int* const ref = &aref = 20; // 内部转换为 *ref = 20cout << "a:" << a << endl;cout << "ref:" << ref << endl;func(a);system("pause");return 0;
}

在这里插入图片描述

2.6 常量引用

常量引用可以防止误操作修改实参。
示例代码:

void showValue(const int& v) {cout << v << endl;
}int main() {const int& ref = 10; // 编译器优化:int temp = 10; const int& ref = temp;cout << ref << endl;system("pause");return 0;
}

在这里插入图片描述

http://www.dtcms.com/a/535100.html

相关文章:

  • 咸阳学校网站建设公司创建简易个人网站
  • 美食网站 怎么做找承包工程的平台
  • 网站内部链接优化方法北京市住房城乡建设厅网站首页
  • 关于网站策划的说法错误的是网页设计入门与应用
  • 通州宋庄网站建设如何设计网站首页
  • 银川做网站的有哪些网站建站前seo注意
  • 证券投资网站做哪些内容河南工程建设 协会网站
  • 外贸品牌网站设计公司wordpress最新列表
  • 崇明网站怎么做seo南通网站建设团队
  • 广州番禺区职业技术学校中职芜湖做网站优化
  • 西部数码网站管理助手ftp怎么制作公众号微信
  • 贵阳建设网站培训山东网站营销
  • 中英双语网站建设漫画网站开发源码
  • 哪个网站上做ppt比较好看的自己做网站并让别人访问
  • 网站icp查询现在有哪些免费推广平台
  • 沈阳网站网站建设中职网站建设课件
  • 吴博 wordpress360优化大师下载官网
  • 餐饮公司网站建设设计得很好的企业网站
  • 你第一个物流网站建设方案个人网站建设发布信息
  • 天津网站推广方法成都室内设计公司排名
  • 天津网站设计建设wordpress文章阅读书
  • 非凡软件站常见的网络营销方式
  • 图标网站导航制作怎么做高端网站制作网站设计
  • flashfxp如何发布网站做网站空间 阿里云
  • 新沂微网站开发衡水哪有做网站的
  • 哪里有做杂志的免费模板下载网站成都高新区建设厅网站
  • 网站搭建中转小型网站的建设方案
  • 国内十大网站制作公司网站开发与建设课程设计
  • iis7.0搭建网站个人资讯网站建设
  • 企业网站开发主要职责wordpress本地nginx