博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
从C到C++ (2)
阅读量:4484 次
发布时间:2019-06-08

本文共 813 字,大约阅读时间需要 2 分钟。

从C到C++ (2)

一、    C++中增加了作用域标示符 ::

1、     用于对局部变量同名的全局变量进行访问。

2、     用于表示类成员。

二、    new、delete运算符

1、       new运算符用于创建堆空间,成功返回首地址失败抛出异常(C++有异常处理机制,C语言中无此机制所以结果要与NULL比较),语法:

              指针变量 = new 数据类型;

              指针变量 = new 数据类型[长度]

             例如:

              int *p; p = new int;           // or p = new int(50),“()”表示对这个空间初始化

              char *pStr; pStr = new char[50];

              new 的3个用法:

              1)new operator       分配内存 + 调用构造函数

              2)operator new       只分配内存

              3)placement new    不分配内存,在已分配的内存中创建对象

2、       delete运算符 用于释放堆空间,语法:

              delete 指针变量

              delete [] 指针变量

三、    C++支持函数重载

相同的作用域,如果两个函数名相同,而参数不同,我们把它称之为重载overload。函数的重载又可以称为函数多态(静态多态,编译时确定函数入口地址)。

C++中为了支持重载,需要进行name managling(名字改编),重载函数会被编译器进行名字改编。如果想让C++编写的函数能被C调用的话,在函数名前加 extern”C”(表明此函数不进行名字改编)。通常这段代码放在.h文件中,此.h文件既可以被C引用也可以被C++引用,也就是说C++编写的一些函数可以被C调用只需要提供给它头文件即可。例:

#ifdef __cpluscplus

extern “C”

{

#endif

#ifdef __cpluscplus

}

#endif

转载于:https://www.cnblogs.com/uriel/p/3737084.html

你可能感兴趣的文章
unmount
查看>>
数据库连接池
查看>>
windwos iis 7.5 使用html 报405错误
查看>>
范围(地址转换)
查看>>
Unity3D游戏,TCP,WEBCOSKT,HTTP通信架构 weaving-socket
查看>>
【小程序入门集锦】19,微信小程序个人帐号申请
查看>>
【JAVA零基础入门系列】Day3 Java基本数据类型
查看>>
两个整数,求他们的最小公倍数和最大公约数
查看>>
Mongo索引
查看>>
php 实现设计模式之 建造者模式
查看>>
An Easy C Program Problem
查看>>
Replace Nested Conditional with Guard Clauses(用卫语句代替嵌套循环)
查看>>
jsp中${}是EL表达式的常规表示方式
查看>>
GoldenGate常见问题及处理
查看>>
Android JNI学习(五)——Demo演示
查看>>
SSRS 呈现Barcode Free
查看>>
数据包和html,数据包和数据报有何区别?
查看>>
jq 异步调用一个html,聊聊如何将jQuery的$.ajax()用于异步HTTP请求
查看>>
android 7.0宽度432,全球最小的4G手机,比手掌还小,安卓7.0
查看>>
android fragmentstatepageradapter框架,Android FragmentStatePagerAdapter
查看>>