欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 金融 > 【C++】从C到C++

【C++】从C到C++

2025/4/19 18:50:00 来源:https://blog.csdn.net/qq_45951891/article/details/143950656  浏览:    关键词:【C++】从C到C++

C和C++一些语法区别

1.三目运算符:在C语言中返回的是一个常量,是不能被赋值的;而C++中返回的是变量,可以被赋值

2.C++中的函数必须要写返回值类型

3.在全局下,C++不允许int a;int a=10;等这种重定义二义性操作

4.在C++中不要返回局部变量或临时变量的地址,虽然C++能够运行变量出作用域之后再使用一次

5.C语言中const修饰的变量不能定义数组大小,而C++中可以

const int a=10;
float arr[a];

6.C++中定义结构体类型变量可以不用写结构体类型名

7.关于C语言有没有bool类型:C语言的布尔类型(bool)

C++11一些标准

兼容旧标准

1.以初始化列表的方式赋值

int c{2};
int d{(int)3.3};
int arr1[6]{1,2,3};

2.空指针

int *p=NULL;//旧标准
int *p1=nullptr;//新标准

3.自动类型

auto x=10.6;//根据初始化赋值的类型决定变量的类型

4.decltype的使用:可以理解为 复制类型

int n=123;
decltype(n) m=100;//定义一个和变量n一样类型的变量m
decltype((n)) k=n;//给变量n取一个别名k,类似于引用 int& k=n;

5.给数据类型取别名

typedef int HP;//旧
using MP = int;//新
typedef void(*pFun)();//旧
using PFun = void(*)();//新
typedef char str[10];//旧
using Str = char[10];//新

6.新的for循环语法规则

#include<iostream>
int main() {int arr2[10] = { 1,2,3,4,5,6,7,8,9,0 };for (int i = 0; i < 10; i++) {std::cout << arr2[i] << '\t';}std::cout<<std::endl;//新for (auto i : arr2) {std::cout << i << '\t';}
}

这个方法只能用来遍历数组或者容器,i所代表的是里面存储的数据元素。指针不能这样遍历

从面向过程到面向对象

面向过程的优缺点

优点

  • 程序结构简单,仅由三种基本的结构(顺序、选择、循环)组成,我们就可以解决任何问题。所以对于面向过程要专注于逻辑的学习,而不需要学习记忆很多语法
  • 把大问题分解为小问题解决,把小问题解决了就相当于把大问题解决了,这样会使问题简单化
  • 自上往下,一步步的完善,也就是先从整体角度看待问题,然后列出解决问题需要的步骤,再逐步去完善。这样会让我们全面地考虑问题,使得我们对整个程序的逻辑结构清楚明了

缺点

  • 在面向过程的时候,数据和操作往往都是分离的。如果数据的结构改变,那么操作数据的函数就不得不重写,这个代价就比较大
  • 数据一般都不具有封装性,很多变量都是暴露出来的,容易被篡改
  • 当多人协作开发的时候问题就更多了,比如一些标识符重名,每个人之间的项目逻辑不清楚

有这样一个比喻,面向过程是炒饭,面向对象是盖饭;我们选择了鱼香肉丝盖饭,想换成宫保鸡丁盖饭,不用更换米饭,把上面那层菜更换一下即可;而炒饭却不能这样,但是炒饭更入味。所以各有各的好处,就看你如何使用了。

它们也是思维方式的不同,既然讲到饭了,我们就来说说做饭。面向过程是做饭的过程,比如洗菜、开火、放菜、放调料,是一个过程。而面向对象,是把菜、锅、人各看成是一个对象。菜有品种、颜色、形状等,锅有大小、性能等,人可能是不同级别的厨师等。而锅能点火加热菜,人能使用工具炒菜,它们之间产生某些行为就是做饭。

meal

我们在学习过程中会慢慢体会和了解更多…

【C++】类和对象

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词