C++
文章平均质量分 55
wly_2014
这个作者很懒,什么都没留下…
展开
-
C++学习------模板顺序/分支与循环代码的编写
学习《C++模板元编程实战》笔记#顺序执行#include <iostream>template <typename T>class RemoveReferenceConst{ private: using inter_type = typename std::remove_reference<T>::type; public: using type = typename std::remove_const<in原创 2021-02-12 22:07:10 · 312 阅读 · 0 评论 -
win10配置vscode用于C++代码开发
1 安装vscode2 vscode中安装C/C++和Runner软件3 安装 winGW推荐一个简单教程https://blog.csdn.net/weixin_41931548/article/details/104286271?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-3&spm=1001.2101.3001.4242原创 2021-02-12 21:53:05 · 201 阅读 · 0 评论 -
win10 MinGW-w64安装教程——著名C/C++编译器GCC的Windows版本
本文转自:https://www.cnblogs.com/ggg-327931457/p/9694516.html原文没有图片,文字足以说明问题。MinGW-w64安装教程——著名C/C++编译器GCC的Windows版本本文主要讲述如何安装 C语言 编译器——MinGW-w64,特点是文章附有完整详细的实际安装过程截图,文字反而起说明提示作用。编写本文的原因始于我的一个观点:图片可以比文字传达更多的信息,也能让其他人更容易理解作者的意图及思想。因此,我将安装 MinGW-w64 的过程和步转载 2021-02-12 16:16:21 · 3697 阅读 · 0 评论 -
剑指offer:把二叉树打印成多行
题目描述从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。解题思路:按层打印二叉树,即二叉树的层序遍历。使用队列即可。/*struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) :原创 2016-04-11 17:33:57 · 317 阅读 · 0 评论 -
使用c++中优先级队列
最近在练习编程,看到很多题目的求解中都要用到堆。自己只是看了c++primer,没有看STL。因此对这部分不是很清楚,感觉c++STL里面好多东西。通过这篇文章总结一下优先级队列的使用。 具体堆的操作可以参考:http://blog.csdn.net/xiajun07061225/article/details/8553808首先要比较一下STL中队列和优先级队列支持的操作:q.empt原创 2016-04-18 20:12:51 · 761 阅读 · 0 评论 -
c++中在顺序容器中访问、插入、删除元素的操作
c++中的顺序容器有vector,deque,queue,list,stack,priority_queue等访问顺序容器内元素的操作:c.back( ) 返回容器c的最后一个元素的引用。如果c为空,操作未定义。c.front( ) 返回容器c的第一个元素的引用。如果c为空,操作未定义。c[n] 返回下标为n的元素的引用 如果n=c.size(),该操作未定义原创 2016-04-19 16:00:57 · 1850 阅读 · 0 评论 -
淘宝开源网络框架TBNET分析
此文转载自:http://blog.chinaunix.net/uid-20196318-id-3142050.html没事可以多看看他的博客TBNET是淘宝的开源异步网络框架,源码见:http://code.taobao.org/p/tb-common-utils/src/trunk/tbnet/TBNET主要类之间的联系如下,其中框架的使用者需要关注红色部分的类转载 2016-05-15 15:39:11 · 1957 阅读 · 0 评论 -
C++中的随机数函数
转自:http://blog.sina.com.cn/s/blog_51409e8f01009hr7.html~type=v5_one&label=rela_nextarticleC++中产生随机数种子对于初学者一直都很困惑.大家知道,在C中有专门的srand(N)函数可以轻松实现这一功能,然而在C++中则要复杂一些.下面是笔者学习的一点心得,希望对大家能有所帮助.(这里我们依然要借助转载 2016-05-05 16:00:16 · 427 阅读 · 0 评论 -
c++中指向类数据成员的指针
首先提出几个问题:1、怎么获得数据成员的偏移量?2、如果类中有虚函数,类的布局是怎么样?vptr是放在对象内存的开始处还是结尾处,还是什么地方?(当然具体的编译器实现不同)在这里在vs2010上进行几个简单的测试测试例子1Point3d.h文件#pragma onceclass Point3d{public: Point3d(void); ~Point3d(void);原创 2016-06-25 14:22:00 · 1660 阅读 · 0 评论 -
c++中指向类数据成员的指针
首先提出几个问题:1、怎么获得数据成员的偏移量?2、如果类中有虚函数,类的布局是怎么样?vptr是放在对象内存的开始处还是结尾处,还是什么地方?(当然具体的编译器实现不同)在这里在vs2010上进行几个简单的测试测试例子1Point3d.h文件#pragma onceclass Point3d{public: Point3d(void); ~Point3d(voi原创 2016-06-25 14:22:20 · 522 阅读 · 0 评论 -
C++Primer学习笔记:运行时类别识别
dynamic_cast操作符:dynamic_cast操作符的作用是将基类类型对象的引用的指针或指针转化为同一继承层次中其他类型的引用或指针。1、与dynaminc_cast一起使用的指针必须是有效的——它必须为0或者指向一个对象2、与其他强制类型转换不同,dynamic_cast涉及运行时类型检查。如果绑定到引用或指针的对象不是目标对象,则dynamic_cast失败。dynami原创 2016-06-12 11:41:41 · 418 阅读 · 0 评论 -
深入探索c++对象模型中Data Members的指针
在阅读深入探索c++对象模型时,介绍类数据成员的指针,以及类数据成员的偏移量。进行了一下实验实验代码:#include using namespace std;class Point3d{public:virtual ~Point3d(){}void print() //这个函数的作用是答应对象的数据成员的地址{cout //pr原创 2016-04-07 11:38:49 · 384 阅读 · 0 评论 -
c++中类没有数据成员时,类对象的大小
class X{};class Y : public virtual X{};class Z : public virtual X{};class A : public Y,Z{};定义上面的类,类X,类Y,Z分别虚拟公有继承X,类A继承Y,Z。那么sizeof(X)、sizeof(Y)、sizeof(Z)、sizeof(A)分别为多原创 2016-04-08 09:50:48 · 4095 阅读 · 0 评论 -
学习算法的一个博客
http://blog.csdn.net/v_july_v/article/details/6543438转载 2015-09-15 22:06:21 · 280 阅读 · 0 评论 -
时间复杂度和空间复杂度
1、时间复杂度 (1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或时间频度。记为T(n)。 (2)时间复转载 2015-09-16 09:58:50 · 341 阅读 · 0 评论 -
C++中使用clock()函数测试程序时间
c++的头文件ctime中的库函数clock()提供了测试函数运行时间的方法:1、clock()返回类型为clock_t类型2、clock_t实际为long 类型, typedef long clock_t3、clock() 函数,返回从 开启这个程序进程 到 程序中调用clock()函数 时之间的CPU时钟计时单元(clock tick)数(挂钟时间),返回单位是毫秒4、可原创 2015-09-15 21:58:57 · 20894 阅读 · 0 评论 -
Reverse bits of a given 32 bits unsigned integer
For example, given input 43261596(represented in binary as 0000010100101000001111010011100).return 964176192(represented in binary as 00111001011110000010100101000000) Follow up: If this functio原创 2015-10-04 16:29:38 · 732 阅读 · 0 评论 -
5分钟搞定内存字节对齐
转自:http://blog.csdn.net/hairetz/article/details/4084088写出一个struct,然后sizeof,你会不会经常对结果感到奇怪?sizeof的结果往往都比你声明的变量总长度要大,这是怎么回事呢?讲讲字节对齐吧. /******************************分割线如果体系结构是不对齐的,A转载 2015-10-06 14:31:02 · 271 阅读 · 0 评论 -
牛客网:确定两串乱序同构
题目描述给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。这里规定大小写为不同字符,且考虑字符串重点空格。给定一个string stringA和一个string stringB,请返回一个bool,代表两串是否重新排列后可相同。保证两串的长度都小于等于5000。测试样例:"This is nowcoder","is This nowcod原创 2015-10-26 18:54:35 · 338 阅读 · 0 评论 -
c++编译,头文件使用问题
转自:http://blog.sina.com.cn/s/blog_5e8715490100tbmq.html首先,我们可以将所有东西都放在一个.cpp文件内.然后编译器就将这个.cpp编译成.obj,obj是什么东西?就是编译单元了.一个程序,可以由一个编译单元组成,也可以有多个编译单元组成. 如果你不想让你的源代码变得很难阅读的话,就请使用多个编译单元吧.(一个函数不能放到两个编译转载 2015-11-15 16:14:00 · 338 阅读 · 0 评论 -
c++中类对象分配内存大小与虚继承的一些问题
#include class Base{public:int a;};class Derive1 : public virtual Base{public:int c;};class Derive2 : virtual public Base{};class d_Derive : public virtual Derive原创 2016-01-23 20:30:08 · 263 阅读 · 0 评论 -
c++模板函数声明定义分离编译错误详解
转自:http://www.cnblogs.com/qlwy/archive/2012/03/21/2410045.html今天看到accelerated c++上有个简单的vector容器的实现Vec,就再vs2008上编译了下: ///// Vec.h #ifndef GUARD_VEC_H#define转载 2016-01-24 21:40:47 · 729 阅读 · 0 评论 -
c++中优化内存分配:new/delete操作符;allocator类对象的使用;operator new/operator delete函数及定位new表达式
1、C语言、c++中动态分配内存用什么? C语言中动态分配/释放内存用malloc( )和free( )函数,c++中使用new和delete表达式。2、既然有了malloc( )和free( ),为什么还要new/delete呢?(以下为C++ C 编程指南中提到原因)1)首先,malloc和free是C语言的库函数,而new和delete是C++的运算符2)对于非内部原创 2016-01-27 11:37:36 · 1043 阅读 · 0 评论 -
剑指offer:字符串的排列
题目描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 结果请按字母顺序输出。 输入描述:输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。class Solution {public: vector Permutat原创 2016-03-08 19:50:27 · 261 阅读 · 0 评论 -
C++primer习题答案中关于迭代器使用的一个错误
最近在学习c++,在学习迭代器的过程中发现c++primer参考答案中,对于容器的迭代器的运算有一个错误:原创 2015-10-16 16:27:50 · 796 阅读 · 0 评论