
C++
Mr丶Caleb
中国科学技术大学在读研究生
展开
-
对继承理解以及虚析构函数的理解
首先是对继承的理解,继承简单的说就是把基类的东西保留下来(一般都是public继承,这样基类中的public成员继承过来后还是public,基类中的protected成员继承过来后为protected,private成员派生类也无法访问)。这样就达到了代码复用的效果,派生类继承了基类的各个成员及方法。对于派生类来说,如果需要新的成员或者方法,可以在类中添加新的成员和方法,但要注意新添加的成员要进行初转载 2016-08-16 17:11:34 · 444 阅读 · 0 评论 -
C++ primer第三章笔记
为了加强C++的基础,今天开始阅读C++ primer plus这本书。第三章主要讲基本的数据类型,内容较简单,对一些没有见过的琐碎点进行一些记录。头文件limits 该头文件中是一些关于数据类型最大值和最小值的符号常量。C++11初始化方式: int a = {24}或 int a{24},本是用于数组赋值,现可用于单值变量。但不允许缩窄,例如将浮点型转换为整型。整型类型的选择:在变量可能原创 2016-07-29 21:10:15 · 365 阅读 · 0 评论 -
C++primer plus 第11-12章笔记
第11章运算符重载: 举例:Time Time::operator+(const Time & t) const{ Time sum; sum.minutes = minutes + t.minutes; sum.hours = hours + t.hours + sum.minutes / 60; sum.minutes %= 60; return原创 2016-08-10 21:48:39 · 388 阅读 · 0 评论 -
undefined reference to `std::cout'等错误
(1)gcc和g++都是GNU(组织)的一个编译器。(2)后缀名为.c的程序和.cpp的程序g++都会当成是c++的源程序来处理。而gcc不然,gcc会把.c的程序处理成c程序。(3)对于.cpp的程序,编译可以用gcc/g++,而链接可以用g++或者gcc -lstdc++。转载 2016-08-10 20:09:53 · 6702 阅读 · 0 评论 -
C++ primer plus第15-16章笔记
第15章友元类可以声明在公有,私有,保护任意部分。class Tv{public: friend class Remote; ......}class Remote{.....}这样Remote可以使用Tv的私有成员。class Tv; // forward declarationclass Remote{.....}c原创 2016-08-20 17:02:09 · 485 阅读 · 0 评论 -
C++ primer plus第13-14章笔记
第13章派生类不能直接访问基类的私有成员,而必须通过基类方法来访问。派生类的构造函数会先创建基类,如果不调用基类的构造函数,将使用默认的基类构造函数。复制构造函数同理。 释放内存顺序相反。基类指针可以指向派生类对象,基类引用可以在不进行显式类型转换的情况下引用派生类对象。反之不可。 可以用派生类初始化基类,将自动调用隐式复制构造函数。也可以用基类初始化派生类。虚函数会根据引用或指针指向来选原创 2016-08-16 21:41:09 · 452 阅读 · 0 评论 -
C++primer plus第9-10章笔记
第九章程序包含三个部分: 头文件,与结构,数据,函数代码相关的源代码,主函数以及调用的相关代码。 例如: 头文件:#ifndef COORDIN_H_#define COORDIN_H_struct polar{ double distance; // distance from origin double angle; // direction f原创 2016-08-07 14:07:18 · 841 阅读 · 0 评论 -
关于cin,和cin.getline()连用问题
cin>>name; 这句在输入Xiao Ming时遇空格,xiao被输入name, 而Ming留在键盘缓冲区中,被cin.getline(school, 50);捕获。而如果输入 XiaoMing,中间无空格,则会出现 Name为XiaoMing, 回车被school捕获。 而school为空。所以应该改为: cin.getline(name,16);// >> name; cou原创 2016-08-06 15:42:20 · 535 阅读 · 0 评论 -
C/C++语言获取数组的长度
定义数组后可以用sizeof命令获得数组的长度(可容纳元素个数) 注:sizeof返回的是unsigned int类型 如: { int data[4]; int length; length=sizeof(data)/sizeof(data[0]); //数组占内存总空间,除以单个元素占内存空间大小 printf(“length of data[4]=%d”, length );转载 2016-08-06 14:51:51 · 881 阅读 · 0 评论 -
C++primer plus第7-8章函数笔记
第七章数组作为函数的参数: 常规变量传入是传入变量的拷贝,而传入数组是传入数组的地址。int sum_arr(int arr[], int n){ int total = 0; for (int i = 0; i < n; i++) total = total + arr[i]; return total; }方括号表示可传入任意长度,arr是指针而不原创 2016-08-05 09:14:07 · 264 阅读 · 0 评论 -
C++中this指针的用法详解
1. this指针的用处: 一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果。this作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自动将对象本身的地址作为一个隐含参数传递给函数。也就是说,即使你没有写上this指针,编译器在编译的时候也是加上this的,它作为非静态成员函数的隐含形参,对各成员的访问均通过this进行。 例如,调用转载 2016-08-16 20:52:06 · 305 阅读 · 0 评论 -
C++primer plus第4-6章笔记
第四章主要讲解C++的数组,字符串,结构体,指针,动态内存,还提出了两种数组代替品——vector和array.数组和字符串C++11提供了新的初始化方式:int a[4] {1,2,3,4}; 跟单值数据一样,这种初始化方式不能缩窄。字符串和字符数组的区别就是字符串以’\0’结尾; 字符串的初始化:char fish[] = “Bubbles”;自动在末尾加’\0’。 字符串输入cin会原创 2016-08-02 14:10:57 · 379 阅读 · 0 评论