• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
invisible_man
博客园    首页    新随笔    联系   管理    订阅  订阅

随笔分类 -  c++笔记

1 2 下一页
友元

摘要:实例: 输出结果: 为什么会有友元函数? 结合着类的特性和类中一般成员函数,我们可以这样理解:类具有封装和信息隐藏的特性。只有类的成员函数才能访问类的私有 成员,程序中的其他函数是无法访问私有成员的。非成员函数可以访问类中的公有成员,但是如果将数据成员都定义为公有的,这又破坏了隐藏的特性。另外,应该 阅读全文
posted @ 2018-07-08 14:00 invisible_man 阅读(197) 评论(0) 推荐(0)
简单库函数

摘要:memset函数使用方法 将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值, 块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作, 其返回值为指向S的指针。 需要的头文件 在C中 <string.h> 在C++中 <cstring> 更详细的解说见百度百科 -- 阅读全文
posted @ 2018-06-30 21:27 invisible_man 阅读(216) 评论(0) 推荐(0)
c++基础:之泛型与标准模板库

摘要: 阅读全文
posted @ 2018-06-11 23:01 invisible_man 阅读(191) 评论(0) 推荐(0)
c++基础:之封装

摘要:原创: 零灵柒 C/C++的编程教室 2月4日 什么是类 C++是什么?C++设计之初就是class with c,所以简单点说,C++就是带类的C,那么什么是类? 类,简单点说就是类型,在C++中我们一开始所接触的类型有如下几种: //+ char, short, int, long, long 阅读全文
posted @ 2018-05-30 21:51 invisible_man 阅读(1228) 评论(0) 推荐(1)
makefile

摘要:最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。 于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。 后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似 阅读全文
posted @ 2018-04-24 19:36 invisible_man 阅读(219) 评论(0) 推荐(0)
C语言中,头文件和源文件的关系(转)

摘要:简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程: 1.预处理阶段 2.词法与语法分析阶段 3.编译阶段,首先编译成纯汇编语句,再将之汇编成跟CPU相关的二进制码,生成各个目标文件 (.obj文件)4.连接阶段,将各个目标文件中 阅读全文
posted @ 2018-04-24 17:32 invisible_man 阅读(391) 评论(0) 推荐(0)
正则表达式

摘要: 阅读全文
posted @ 2017-12-14 16:56 invisible_man 阅读(112) 评论(0) 推荐(0)
c++四种强制类型转化

摘要:c++ 数据类型转换: static_cast dynamic_cast reinterpret_cast const_cast C++ 类型转换(C风格的强制转换): (1)将浮点型数据赋值给整型变量时,舍弃其小数部分。 (2)将整型数据赋值给浮点型变量时,数值不变,但是以指数形式存储。 (3)将 阅读全文
posted @ 2017-12-14 11:50 invisible_man 阅读(1246) 评论(0) 推荐(0)
c++实现web服务框架

摘要:lamada表达式 声明一个返回数组指针的函数 返回指针数组的函数形式如下所示: 括号必须存在 注意->后不能加() Lambda表达式 阅读全文
posted @ 2017-12-14 11:43 invisible_man 阅读(622) 评论(0) 推荐(0)
c++中的构造(包括移动),赋值(包括移动),析构详解

摘要:这五种操作:构造(包括移动),赋值(包括移动),析构其实就是定义了对一个对象进行构造,赋值,析构时的行为。理解这些行为并不复杂,复杂的是理解在继承下这些行为的表现。需要注意的是他们并不会被继承(传统意义上的继承)。 拷贝构造函数 形式: class Foo{ public: Foo(); //默认构 阅读全文
posted @ 2017-12-13 11:41 invisible_man 阅读(2056) 评论(0) 推荐(0)
关于继承中的析构函数

摘要:测试代码1: 在vs2003运行结果如下 ClassA::ClassA() beginClassA::Print()ClassA::ClassA() endClassB::ClassB() beginClassB::Print()ClassB::ClassB() end ClassB::Print( 阅读全文
posted @ 2017-12-11 17:25 invisible_man 阅读(378) 评论(0) 推荐(0)
c++智能指针详解

摘要:动态内存 每个程序有一个内存池,称为堆,用于存储动态分配的对象,即那些在程序运行时分配的对象。动态对象的生存周期由程序来控制,也就是说,当动态对象不再使用时,我们的代码必须显示的销毁他们。 使用懂态内存是十分必要的额,但众所周知,正确管理动态内存是十分棘手的。比如忘记释放内存就会产生内存泄漏。有时尚 阅读全文
posted @ 2017-12-09 14:04 invisible_man 阅读(2997) 评论(0) 推荐(0)
c++explicit

摘要:首先, C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式). 那么显示声明的构造函数和隐式声明的有什么区别呢? 我们 阅读全文
posted @ 2017-12-08 22:36 invisible_man 阅读(257) 评论(0) 推荐(0)
c++模板特化偏特化

摘要:模板为什么要特化,因为编译器认为,对于特定的类型,如果你对某一功能有更好地实现,那么就该听你的。 模板分为类模板与函数模板,特化分为全特化与偏特化。全特化就是限定死模板实现的具体类型,偏特化就是模板如果有多个类型,那么就只限定为其中的 一部分,其实特化细分为范围上的偏特化与个数上的偏特化。 模板的泛 阅读全文
posted @ 2017-12-07 21:39 invisible_man 阅读(13291) 评论(0) 推荐(1)
为什么size_t重要?

摘要:参见 http://en.cppreference.com/w/cpp/types/size_t size_t其实与uintptr_t一个道理。就是一个东西。指针其实就是寻址,与地址总线位数一致,编译器根据平台决定,从性能和可移植性分析有其由来。 之前在《内存拷贝的注意事项》一文中提到过size_t 阅读全文
posted @ 2017-11-18 09:14 invisible_man 阅读(366) 评论(0) 推荐(0)
c++虚函数重写的权限问题

摘要:cbase.h: #ifndef CBASE_H 阅读全文
posted @ 2017-11-06 11:53 invisible_man 阅读(244) 评论(0) 推荐(0)
qt用mingw编译时报错 multiple definition of

摘要:1 2 3 首先,检查自己的程序是否真的有重定义、头文件循环包含等问题。 若确定没有,则是由于方法的实现放在了头文件中,将这些方法的实现转移到对应的cpp文件中。 移动后编译,可能仍然会报错。(╯‵□′)╯︵┻━┻ 这是因为在debug目录下的*.o文件时上次编译时生成的旧文件,需要将这些.o文件全 阅读全文
posted @ 2017-11-06 10:48 invisible_man 阅读(724) 评论(0) 推荐(0)
inline详解

摘要:1. 引入inline关键字的原因 在c/c++中,为了解决一些频繁调用的小函数大量消耗栈空间(栈内存)的问题,特别的引入了inline修饰符,表示为内联函数。 栈空间就是指放置程序的局部数据(也就是函数内数据)的内存空间。 在系统下,栈空间是有限的,假如频繁大量的使用就会造成因栈空间不足而导致程序 阅读全文
posted @ 2017-11-06 09:24 invisible_man 阅读(1031) 评论(0) 推荐(0)
C++静态数据成员与静态成员函数

摘要:一般情况下,如果有n个同类的对象,那么每一个对象都分别有自己的数据成员,不同对象的数据成员各自有值,互不相干。但是有时人们希望有某一个或几个数据成员为所有对象所共有,这样可以实现数据共享。可以使用全局变量来达到共享数据的目的。例如在一个程序文件中有多个函数,每一个函数都可以改变全局变量的值,全局变量 阅读全文
posted @ 2017-11-04 21:25 invisible_man 阅读(1137) 评论(0) 推荐(0)
c++虚函数实现机制(转)

摘要:前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚 阅读全文
posted @ 2017-10-16 11:23 invisible_man 阅读(227) 评论(0) 推荐(0)

1 2 下一页
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3