C++(一)——与C的区别

C++基于C语言有如下方面的增强:

更为严格的类型检查

新增变量引用

支持面向对象

​ 类和对象、继承、多态、虚函数及RTTI (运行时类型识别)新增泛型编程

支持模板,标准模板库(STL)

支持异常处理

支持函数及运算符重载

支持名字空间

​ 用于管理函数名、变量名及类


c和c++的一些区别

1.c++不允许出现多个 同名的全局变量

2.c里面 const修饰的变量是可以通过指针去修改的,c++不能修改

3.c语言里面 int *p = NULL, c++中使用 nullptr

4.引用

数据类型+&+变量名

取别名

函数的传参,函数的返回值

5.函数重载

函数名一样,参数的个数或者类型不一样

6.默认参数

默认参数只能从右边开始设置

传参是从 左边开始赋值

注意~~~~默认参数和函数重载可能会有歧义

7.输入输出

iostream

cout 输出

cin 输入

8.强制转换

(类型)变量名 eg: (int)a

类型(变量名) eg: int(a);

9.内联函数

关键字 inline

要求:代码简单(5个语句), 不能有循环swich这样的语句

使用该函数是直接编译到主函数,不需要函数的跳转,要求函数的声明和定义都写在头文件

10.结构体

c++结构体可以有函数,并且拥有this指针,还有三个权限 public private protected

11.变量

局部

在函数或一个代码块内部声明的变量,称为局部变量。它们只能被函数内部或者代码块内部的语句使用。下面的实例使用了局部变量:

#include <iostream> 

 using namespace std;  

 int main () 

{  // 局部变量声明  

 int a, b;  int c;  

  // 实际初始化  a = 10;  

 b = 20; 

c = a + b;   

 cout << c;  

 return 0; 

 }

全局

在所有函数外部定义的变量(通常是在程序的头部),称为全局变量。全局变量的值在程序的整个生命周期内都是有效的。

全局变量可以被任何函数访问。也就是说,全局变量一旦声明,在整个程序中都是可用的。下面的实例使用了全局变量和局部变量:

#include <iostream> 

using namespace std;  

 // 全局变量声明

  int g;

  int main () 

 {  // 局部变量声明  


 // 实际初始化 

  a = 10;  

 b = 20;  

 g = a + b; 

  cout << g;   

 return 0; 

 }

命名空间 ::

#include <iostream>

 using namespace std;

void func()
 {
     cout<<"func"<<endl;
 }
 namespace myspace  //命名空间
 {

     int a = 5 ;
     void func()
     {
         cout<<"func_my"<<endl;
     }
 };

int main()
 {

    myclass :: a = 1;
     myspace :: func();
     cout<<"a="<<myspace :: a <<endl;
 }

类域 ::

类作用域指的是在类内部声明的变量:

  #include <iostream>

 class MyClass {
public:
  static int class_var; // 类作用域变量
 };

int MyClass::class_var = 30;

int main() {
  std::cout << "类变量: " << MyClass::class_var << std::endl;
  return 0;
 }
 

12.堆区空间开辟

c : malloc free 函数

c++ : new delete 关键字 eg:new int[n] , delete []p

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值