C++
文章平均质量分 82
bit_
这个作者很懒,什么都没留下…
展开
-
C/C++从以下几个方面的比较
C/C++从以下几个方面的比较:关键字的个数: C语言:C99版本,32个关键字 C++:C98版本,63个关键字源文件: C源文件后缀.c,C++源文件后缀.cpp,如果在创建源文件时什么都不给,则默认是.cpp变量定义或声明位置: C语言必须在第一行定义;C++不做要求函数: (1)返回值 C语言中,如果一个函数没有指定返回值类型,默认返回int型; C++中,对于函...原创 2018-07-23 14:51:56 · 219 阅读 · 0 评论 -
C++中的动态内存分配
常见的程序崩溃的原因:由assert()触发的;操作内存时,越界了;内存没有被初始化就拿去用了;栈溢出了;使用了野指针。 总之,非法操作内存会对引起程序崩溃。C中动态内存管理方式:使用malloc/calloc/realloc/free进行动态内存管理。 malloc、calloc、realloc的相同点与不同点: 相同点:都是在堆上开辟空间的。都是通过fre...原创 2018-07-23 00:45:51 · 350 阅读 · 0 评论 -
多态
多态一、概念 同一事物在不同的场景下具有不同的形态二、分类静态多态(函数重载、泛型编程):编译器在编译期间完成,编译器根据函数实参的类型(可能会进行隐式类型转换), 可推断出要调用哪个函数,如果有对应的函数就调用该函数,否则编译出错。动态多态(虚函数):在运行期间进行三、动态多态的条件基类中必须包含虚函数,并且派生类一定要对基类中的虚函数进行重写。通过基类对象的指针...原创 2018-07-24 17:18:18 · 136 阅读 · 0 评论 -
动态内存分配
动态内存分配常见的程序崩溃的原因:由assert()触发的;操作内存时,越界了;内存没有被初始化就拿去用了;栈溢出了;使用了野指针。总之,非法操作内存会对引起程序崩溃。C中动态内存管理方式:使用malloc/calloc/realloc/free进行动态内存管理。malloc、calloc、realloc的相同点与不同点:相同点:都是在堆上开辟空间...原创 2018-07-24 15:05:35 · 1020 阅读 · 0 评论 -
分析:如果类中没有显式给出构造函数、拷贝构造、赋值运算符重载、析构函数,编译器会自动合成吗?
分析:如果类中没有显式给出构造函数、拷贝构造、赋值运算符重载、析构函数,编译器会自动合成吗?一、 看构造函数,系统会自动合成构造函数吗?class Test{public: /*Test() {}*/public: int _data;};int main(){ Test t; return 0;}分析: 1. 在此例中,通过在...原创 2018-07-24 14:28:30 · 1483 阅读 · 0 评论 -
内联函数以及它和宏的区别
内联函数以及它和宏的区别一、 概念以 inline 修饰的函数叫做内联函数。 内联函数在调用时不是像一般函数那样要转去执行被调用函数的函数体,执行完成后在转回调用函数中,执行其后的语句;而是在调用处用内联函数体的代码来替换,这样没有函数压栈,将会节省调用的开销,提高运行效率。//内联函数inline int Max(int a, int b){ if (a < b)...原创 2018-07-24 13:17:34 · 6355 阅读 · 0 评论 -
构造函数、拷贝构造函数、析构函数
构造函数、拷贝构造函数、析构函数构造函数一、概念 构造函数是一个特殊的成员函数,名字与类名相同,创建类类型对象时,由编译器自动调用,在对象的生命周期内只调用一次且是在创建对象时被调用的,它保证了每个成员都有一个合适的初始值。 //代码//构造函数class Date{public: Date(int year, int month, int day) {...原创 2018-07-24 08:42:39 · 328 阅读 · 0 评论 -
C++的类和This指针
C++的类和This指针类一. 类的定义//类的定义class className{ //类体:由函数和变量组成};//一定要注意后面的分号class为定义类的关键字,className为类名,{}中为类的主体,注意类定义结束时后面的分号。类中的元素为类的成员;类中的数据为类的成员变量;类中的函数为类的成员函数。类的定义通常有两种方式: a.类的声明和定义...原创 2018-07-24 07:57:15 · 544 阅读 · 0 评论 -
结构体
结构体结构体的概念结构体是一系列数据的集合,这些数据可能描述了一个物体,也可能是对一个问题的抽象。结构体的定义//结构体的定义struct Student{ char _name[20];//20 char _gender[3];//3 int _age;//4};sizeof(struct Student)=28结构体的内存对齐结构...原创 2018-07-23 15:04:08 · 205 阅读 · 0 评论 -
友元
友元友元的内容:引入友元友元的分类 友元函数友元类友元的优缺点友元的注意事项一、引入友元 一个常规的成员函数(不是static、const修饰的,不是友元的)声明描述了三件在逻辑上相互不同的事情: 该函数能访问类声明的私有部分。 该函数位于类的作用域之中。 该函数必须经由一个隐藏的this指针去调用。 通过该函数声明为s...原创 2018-08-29 11:15:20 · 1951 阅读 · 0 评论