
005_C++
005_C++
陆小果哥哥
这个作者很懒,什么都没留下…
展开
-
021—转载-各种数据类型在16位、32位和64位系统下所占字节差异简介
原文:各种数据类型在16位、32位和64位系统下所占字节差异简介编写C、C++程序时需要考虑每种数据类型在内存中所占的内存大小,即使同一种数据类型在不同平台下所占内存大小亦不相同,具体对比如下:...原创 2020-04-24 10:04:26 · 344 阅读 · 0 评论 -
020_C语言常用函数
清除数组,初始化数值头文件:#include <memory.h>或 #include <string.h>函数原型:memset(void *s,int ch,size_t n);使用示例:char buff[100];memset(buff, 0, sizeof(buff));将数值buff全部清零2.在某个字符串中查找特定的字符(字符串)...原创 2019-12-24 09:05:31 · 341 阅读 · 0 评论 -
019_linuxC++之_函数模板引入
(一)首先我们来看非模板程序,函数只是输入不一样的变量就需要构件很多个不一样的函数,那么这样很麻烦,则引入函数模板int& max(int& a, int& b){ return (a < b)? b : a;}double& max(double& a, double& b){ return (a < b)?...原创 2019-12-24 09:03:46 · 159 阅读 · 0 评论 -
018_linuxC++之_抽象类的引入
(一)参考原文链接:C++多态(二)抽象类在介绍抽象类之前,我们先介绍一下纯虚函数。1.纯虚函数在基类中仅仅给出声明,不对虚函数实现定义,而是在派生类中实现。这个虚函数称为纯虚函数。普通函数如果仅仅给出它的声明而没有实现它的函数体,这是编译不过的。纯虚函数没有函数体。纯虚函数需要在声明之后加个=0;class <基类名>{ virtual <类型>...原创 2019-12-24 09:01:24 · 169 阅读 · 0 评论 -
017_linuxC++之_多态的引入
多态:一种接口,多种方法(同一种调用方法,根据不同的对象,调用不同类中的函数)静态联编:非虚函数,在编译时确定好动态联编: 1. 对象里有指针,指向虚函数表 2. 通过指针,找到表,调用虚函数 3. 图二 4. virtual来定义为虚函数(一)首先我们来看静态联编,非多态的程序#include <iostream>#include &...原创 2019-12-24 08:59:33 · 104 阅读 · 0 评论 -
016_linuxC++之_多重继承
(一)代码#include <iostream>#include <string.h>#include <unistd.h>using namespace std;class Sofa {public: void watchTV(void) { cout<<"watch TV"<<endl; }};class...原创 2019-12-24 08:57:49 · 139 阅读 · 0 评论 -
015_linuxC++之_覆写
34.类成员函数的重载、覆盖和隐藏区别?答案:a.成员函数被重载的特征:(1)相同的范围(在同一个类中);(2)函数名字相同;(3)参数不同;(4)virtual 关键字可有可无。b.覆盖是指派生类函数覆盖基类函数,特征是:(1)不同的范围(分别位于派生类与基类);(2)函数名字相同;(3)参数相同;(4)基类函数必须有virtual 关键字。c.“隐藏”是指派生类的函数屏...原创 2019-12-24 08:55:45 · 196 阅读 · 0 评论 -
014_linuxC++之_不同类型的继承
#include <iostream>#include <string.h>#include <unistd.h>using namespace std;class Father {private: int money;protected: int room_key; public: int address;...原创 2019-12-24 08:54:02 · 84 阅读 · 0 评论 -
013_linuxC++之_派生类中权限的调整
(一)在上一篇012_LINUXC++之_类的继承定义中我们知道在派生类中可以访问public和protectd中的数据(二)那么我们就可以在派生类中将上面两个中的数据进行权限的修改(三)程序#include <iostream>using namespace std;class Father{public: int test1;private: ...原创 2019-12-24 08:52:15 · 224 阅读 · 0 评论 -
012_linuxC++之_类的继承定义
(一)访问控制和继承公有继承(public):当一个类派生自公有基类时,基类的公有成员也是派生类的公有成员,基类的保护成员也是派生类的保护成员,基类的私有成员不能直接被派生类访问,但是可以通过调用基类的公有和保护成员来访问。保护继承(protected): 当一个类派生自保护基类时,基类的公有和保护成员将成为派生类的保护成员。私有继承(private):当一个类派生自私有基类时,基类的公有和...原创 2019-12-24 08:46:57 · 218 阅读 · 0 评论 -
011_linuxC++之_继承的引入
(一)面向对象程序设计中最重要的一个概念是继承。继承允许我们依据另一个类来定义一个类,这使得创建和维护一个应用程序变得更容易。这样做,也达到了重用代码功能和提高执行时间的效果。(二)引入继承程序#include <iostream>#include <string.h>#include <unistd.h>using namespace std;...原创 2019-12-24 08:44:27 · 110 阅读 · 0 评论 -
010_linuxC++之_运算符重载
(一)运算符重载:运算符重载,就是对已有的运算符重新进行定义,赋予其另一种功能,以适应不同的数据类型。(二)实现类不同对象里中变量的相加(三)程序#include <iostream>#include <string.h>#include <unistd.h>using namespace std;class Point {private:...原创 2019-12-24 08:42:43 · 126 阅读 · 0 评论 -
009_linuxC++之_友元函数
(一)定义:友元函数是指某些虽然不是类成员却能够访问类的所有成员的函数。类授予它的友元特别的访问权。通常同一个开发者会出于技术和非技术的原因,控制类的友元和成员函数(否则当你想更新你的类时,还要征得其它部分的拥有者的同意)。(二)使用非友元函数将两个对象中的变量进行相加#include <iostream>#include <string.h>#include &l...原创 2019-12-24 08:41:21 · 177 阅读 · 0 评论 -
008_linuxC++之_类的静态变量和静态函数
(一)看程序#include <iostream>#include <string.h>#include <unistd.h>using namespace std; class Person {private: static int cnt; /*静态变量,在33行中初始化为0*/ char *name; ...原创 2019-12-24 08:39:58 · 158 阅读 · 0 评论 -
007_linuxC++之_构造函数的初级应用
(一)构造函数:用来在创建对象时初始化对象, 即为对象成员变量赋初始值(二)构造函数的命名必须和类名完全相同(三)更对具体的查看:构造函数(四)直接分析程序解析上面程序:当程序运行到四点时候,就会自动调用第一点无参构造函数,打印Person()当运行到第5点时候,就会调用第2点有参构造函数,并初始化相关参数,打印Person(char *,int)per2.printInfo(...原创 2019-12-24 08:37:13 · 146 阅读 · 0 评论 -
006_linuxC++之_引用
1. 什么是“引用”?申明和使用“引用”要注意哪些问题?答:引用就是某个目标变量的“别名”(alias),对应用的操作与对变量直接操作效果完全相同。申明一个引用的时候,切记要对其进行初始化。引用声明完毕后,相当于目标变量名有两个名称,即该目标原名称和引用名,不能再把该引用名作为其他变量名的别名。声明一个引用,不是新定义了一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因...原创 2019-12-24 08:31:28 · 142 阅读 · 0 评论 -
005_linuxC++之_指针的引入
(一)直接看代码#include <iostream>using namespace std;int add(int a){ a = a + 1; return a;}int add(int *a){ *a = *a + 1; return *a;}int add_ref(int &b){ b = b + 1; re...原创 2019-12-24 08:29:46 · 95 阅读 · 0 评论 -
004_linuxC++之_函数的重载
(一)源码下载(一) 函数的重载:同一个命名函数,通过传入参数的不同,调用不一样的函数上面程序的运行结果:(二)函数只能通过参数的不一样重载函数,不能通过返回参数的不一样重载函数运行结果报错#include <iostream>using namespace std;int add(int a, int b){ cout << "add in...原创 2019-12-23 17:26:55 · 195 阅读 · 1 评论 -
003_linuxC++之_namespace使用
(一)引入namespace原因:假如有很多跟人共同完成一项工程,工程中难免会有函数定义一样的名称,不可能一个一个的询问这个函数 你定义过了没有,所以引入namespace#include <stdio.h>#include "person.h"#include "dog.h"/*global namespace*//*把A::person放入global namespa...原创 2019-12-23 17:19:58 · 208 阅读 · 0 评论 -
002_linuxC++_.h和.c文件
(一)程序修改001_linuxC++之_类的引入(二)修改成为.h和.c文件#include <stdio.h>#include "person.h"int main(int argc,char ** argv){ Person per; per.setName("zhangsan"); per.setAge(200); per.print...原创 2019-12-23 17:18:23 · 318 阅读 · 0 评论 -
001_linuxC++之_类的引入
(一) C++类的引入,图片的程序比较好看,文中程序不贴出来(二) 知识点成员函数的存取权限:公有的(public),保护的(protectd),私有的(private)第27行this->age是类中的。Age是第20行输入的Age 1 #include <stdio.h> 2 3 class Person{ 4 private: 5 char *...原创 2019-12-23 17:15:14 · 149 阅读 · 0 评论