c++的一些知识一

1.指针和引用的区别

   1指针一般指的是某块内存的地址,通过这个地址,我们可以寻址到这块内存;而引用是一个变量的别名

    2指针可以为空,即不指向任何东西;但是引用不能为空。

    3指针可以多次赋值,引用只能在初始化的时候就赋好值,之后就不能改变了。

    4引用的创建和销毁不会调用类的拷贝构造函数和析构函数。

2.new和malloc  

     1、new 是c++中的操作符,malloc是c 中的一个函数
      2、new 不止是分配内存,而且会调用类的构造函数,同理delete会调用类的析构
函数,而malloc则只分配内存,不会进行初始        化类成员的工作,同样free也不会调用析构函数
      3、内存泄漏对于malloc或者new都可以检查出来的,区别在于new可以指明是那个
文件的那一行,而malloc没有这些信息。
      4、new 和 malloc效率比较
new可以认为是malloc加构造函数的执行。new出来的指针是直接带类型信息的。而malloc返回的       都是void指针。

3.int *const p,const int *p和int const *p的区别

      const int *p; // const修饰的是*p,因此*p是常量不能改变,但可以改变p的指向;
       int const* p; // 同上,主要是看const与*的前后关系;
       int* const p; // const修饰的是p,因此p的指向是常量不能改变,但*p可以改变;
       const int const *p; // 两个const既修饰了*p也修饰了p,因此*p与p都是常量不能改变;

4.C++程序中main(int argc, char *argv[])函数的参数意义

两个参数中第一个参数argc表示在Dos命令行中的输入的程序名和参数个数之和,第二个参数中argv[0]记录的程序名,后面的argv[i]记录的输入参数。另外argc argv是标识符,可以修改名称。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值