![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++基础
y780465649
这个作者很懒,什么都没留下…
展开
-
内联函数
内联函数在C语言中的实现方式 是使用#define//替换#define GETX3(N) N*N*N//1+2*1+2*1+2//函数 int getX3(int x)//类型安全{ return x*x*x;}void main(){ std::cout GETX3(1 + 2) std::endl; std::cout GETX3((1 + 2)) std::endl;翻译 2016-08-27 16:35:20 · 447 阅读 · 0 评论 -
C++中的重载
函数重载:用同一函数名定义不同的函数,当函数名和不同的参数搭配时函数的含义不同。函数重载至少满足一下的一个条件: 参数个数不同 参数类型不同 参数顺序不同函数的返回值不是函数重载的判断标准默认参数和重载在一起,会报错,产生二义性void func(int转载 2016-08-27 16:36:47 · 518 阅读 · 0 评论 -
默认参数和占位参数
默认参数C++中可以在函数声明时为参数提供一个默认值,当函数调用时没有指定这个参数的值,编译器会自动用默认参数代替 void myprint(int x=5){cout"x="xendl;}void main(){myprint();//直接打印x=5;myprint(4);//直接打印x=4;}函数默认参数规则: 只有参数列表后面部分的参数才可以翻译 2016-08-27 16:39:20 · 728 阅读 · 0 评论 -
C++中类的四种构造函数
构造函数又分为4大类:1、无参数构造函数2、有参数构造函数3、赋值构造函数(copy构造函数)4、默认构造函数class test{public: test() { m_a = 1; m_b = 2; cout "这是无参数构造函数" endl; } test(int a) { m_a = a; cout "这是有一个参数构造函数" e原创 2016-08-27 16:42:33 · 16414 阅读 · 4 评论 -
构造函数初始化列表
解决问题:在B类中,组合了一个A类对象(A类设计了构造函数),根据构造函数的调用规则,设计了A类函数就必须要调用,但是没有机会初始化A解决办法,在写B的构造函数的时候,把A写进去,语法为class A{public: A(int a,int a2) { this->a1 = a1; this->a2 = a2; }private: int a1; int a2;};转载 2016-08-27 16:48:31 · 477 阅读 · 0 评论 -
友元函数和友元类
友元函数是在类外面定义一个全局函数,并在类内声明成友元函数,这样在这个函数里面就可以修改类内的私有属性。#include "iostream"using namespace std; class A{public ://1、声明位置和public和private的位置无关 friend void modifyA(A *pa, int _a);//此处声明modifyA是类A的友元函数/翻译 2016-08-27 16:58:25 · 485 阅读 · 0 评论 -
函数返回对象和返回对象的引用的区别
当返回对象时,C++编译器将调用类默认的拷贝构造函数,将对象赋值给一个匿名对象并将其扔出去这个类似于拷贝构造函数的第四种方法,此时如果外面没有同一个类型的对象将其接住,就会直接析构掉。若定义的是返回对象的函数,此处会直接返回对象本身不会再创建一个匿名对象 利用操作符重载的例子加以说明#include "iostream"using namesp原创 2016-08-27 17:05:43 · 6590 阅读 · 1 评论 -
C++对C语言的加强
1、对strcut关键字的加强,在C语言中struct Teacher{int age;char name[64];}; 定义一个Teacher,必须写成struct Teacher t1;而C++中则可以直接写Teacher t1;在C++中的结构体内可以直接定义函数,也可以定义访问权限类其实就是结构的数据成员加可执行代码,统一提供封装,继承,多态原创 2016-08-08 21:22:54 · 404 阅读 · 0 评论 -
引用(普通引用)
引用引用一个指针& 放在*的右边 void change (myclass *&p){ }int &i=j 等价于 int *const i=j;int a ;int &b=a;//引用定义时必须初始化//此时b就已经建立了对a的引用引用的本质上是为了方便程序员间接修改变量的程序编写,不需要使用指针,编译器在内部已经做了。原创 2016-08-08 21:24:00 · 325 阅读 · 0 评论