自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 收藏
  • 关注

原创 c++11 thread 初始化

class background_task{public: int id; int value; background_task(int _id, int _value):id(_id),value(_value){ output(); std::cout << "initialize.\n"; }...

2018-06-06 09:08:26 2212

原创 整数相乘容易出错实例

 ////* 1、测试 两个 int32 整数相乘,结果放保存在uint64整数,测试输出结果是否正确 * 2、 * 3、 * * date: 2018-05-25 */#include <iostream>#include <fstream>#include <vector>#include &l...

2018-05-24 08:46:46 343

原创 (转)Linux C++程序进行性能分析工具gprof使用入门

转自https://blog.csdn.net/garfier/article/details/12489953# 性能分析工具软件的性能是软件质量的重要考察点,不论是在线服务程序还是离线程序,甚至是终端应用,性能都是用户体验的关键。这里说的性能重大的范畴来讲包括了性能和稳定性两个方面,我们在做软件测试的时候也是要重点测试版本的性能表现和稳定性的。对于软件测试过程中发现的性能问题,如...

2018-04-12 19:35:40 184

原创 __gnu_parallel::sort()对空间是否有要求

 目的:在使用__gnu_parallel::sort()时,发现改方法对空间好像有要求,所以测试__gnu_parallel::sort()的空间需求。方法: 在4G内存的机器上运行一个大的数据,然后调用__gnu_parallel::sort()排序,看是否能正常运行。结果:该方法确实需要两倍的排序空间#include <iostream>#include ...

2018-04-04 15:03:27 294

原创 delete 对象后调用该对象的方法程序不报错

   delete 一个对象后,在执行该对象的方法,并不会报错,而返回一个不确定的值。 /*测试 delete MyVector 对象后,执行 is_eof() 函数是否显示已经结束*/#include "vector.h"using uint32 = unsigned int;int main(){ MyVector<uint32>...

2018-03-27 10:30:56 309

原创 ubuntu拼音设置

Ubuntu16.04 已经自带pinyin输入法,直接设置即可使用,设置方法: 1、system setting -》language support -> keyboard input method system 选择 fcitx。2、system setting -》 text entry -》,勾选 show  current input source in the ...

2018-03-25 08:32:41 1211

原创 new 数组越界 系统不会报错

/** \brief 测试 数组越界 , 系统是否有报错 * 测试结果: 不报错 * * \param * \param * \return * */#include <iostream>using std::cout ;int main(){ int * ary = new int [100...

2018-03-21 15:00:18 350

原创 delete 数组后 指针是否为null

/** \brief 测试 delete 数组指针后,数组指针是否为 nullptr * 测试结果: delete 数组指针后, 数组指针不为 nullptr * * \param * \param * \return * */#include <iostream>using std::cout ;int ...

2018-03-21 14:54:08 859 2

原创 类的函数模班

 #include <iostream>class UtilityTool{public: template< typename alphabet_type> static void method1(){ std::cout << __FUNCTION__ << ": sizeof(alp...

2018-03-08 14:17:10 64

原创 ubuntu 16.04 codeblocks 配置 openmp

( 转载:http://www.voidcn.com/article/p-wwyflsmx-bab.html ) 添加 openmp 编译选项    Setings-->Compiler-->Global compiler settings-->Compiler settings --> Compiler Flags    勾选 Enable the Ope...

2018-03-08 09:34:48 674

原创 Ubuntu 16.04 Linux系统内核升级方法(转)

转载地址:http://blog.csdn.net/csdn_duomaomao/article/details/77668946一、查看系统及内核版本命令#查看发布版本号cat /etc/issuelsb_release -a#查看内核版本号uname -sruname -a二、升级内核方法#到 Ubuntu网站http://kernel.ubuntu.com/~kernel-ppa/main...

2018-03-03 09:59:14 603

原创 编程错误总结

codeBlocks 中,sizeof() 函数统计错误,需要使用#pragma pack(push, 1)和#pragma pack(pop) 才能统计正确,__attribute__((packed));不正确#if _MSC_VER#pragma pack(push, 1)#endiftemplate<typename T1, typename T2>s...

2018-02-08 10:30:45 208

原创 错误示例:字节对齐

#include<vector>#include<iostream>#include<stdio.h>struct student { char c; int age;}__attribute__((packed));//win32 系统中 codeblock 运行结果:为8,char和int换位置后结果为:5 ...

2018-02-05 22:51:46 227

原创 __attribute__((packed))详解

转自 http://blog.csdn.net/primeprime/article/details/50646469 1. __attribute__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐,是GCC特有的语法。这个功能是跟操作系统没关系,跟编译器有关,gcc编译器不是紧凑模式的,我在windows下,用vc的编译器也不...

2018-02-05 22:20:26 236

原创 错误示例:包引入顺序

#include<vector>#include<iostream>#include<stdio.h>//如果tuple.h在common.h前面,程序会报错,如果放在后面则正常。//说明包引入有先后顺序,使用时要注意#include "tuple.h"#include "common.h"int main(){ ...

2018-02-05 21:51:34 303

原创 文件读写代码

#include <iostream>#include <fstream>#include <string>#include <sstream>using std::ifstream;using std::ofstream;using std::string;using std::cout;/* run th...

2018-02-05 14:52:52 207

原创 C++统计代码运行时间计时器(转)

转自http://blog.csdn.net/ap1005834/article/details/53419647 一、前言          这里记下从网上找到的一些自己比较常用的C++计时代码 二、Linux下精确至毫秒 #include <sys/time.h> #include <iostream> #incl...

2018-02-05 11:59:53 1221

原创 右值引用与转移语义

转载自《https://www.ibm.com/developerworks/cn/aix/library/1307_lisl_c11/》新特性的目的右值引用 (Rvalue Referene) 是 C++ 新标准 (C++11, 11 代表 2011 年 ) 中引入的新特性 , 它实现了转移语义 (Move Sementics) 和精确传递 (Perfect Forwarding)。它...

2018-01-26 14:52:57 98

原创 const 引用

#include <iostream>using std::cout;using std::endl;int main(){int ival = 0;const int ival3 = 1;int * const & ref = &ival;// int * & ref2 = &ival; //错误,因为 &a...

2018-01-26 11:52:55 59

原创 Lvalues and Rvalues

 转自http://www.cnblogs.com/areliang/archive/2011/11/16/2251480.html 今天看C++模板的资料,里面说到lvalue,rvalue的问题,这个问题以前也看到过,也查过相关资料,但是没有考虑得很深,只知道rvalue不能取地址,不能赋值等等一些规则。今天则突然有了更深层次的理解(也可以说是顿悟,耗时不过几秒钟),记录下来。...

2018-01-26 10:54:57 298

原创 vitual 函数

虚函数:通过基类对象指针指向派生类对象,或通过基类对象引用来引用派生类对象[code="c++"]#include #include using std::cout;using std::endl;using std::cin;using std::string;class ex0{ public: virtual string show(){...

2018-01-24 10:48:36 291

原创 const reference 关键字 示例 代码

[code="c++"]#include using std::cout;using std::endl;int main(){ int i = 5; const int ic =10; const int *pic = &i;//从右往左定义“pic 是一个指向int类型的、被定义成const对象的指针” i = i+1; ...

2018-01-21 10:03:02 240

原创 类模板 示例代码

[code="c++"]#ifndef ARRAY_CLASS#define ARRAY_CLASS#include #include //数组类模板template class Array{public: Array(int sz = 50); //构造函数 Array(const Array& A); //拷贝构造函数 ~Array(vo...

2018-01-20 16:40:40 211

原创 析构函数显式调用

[code="c++"]#include #include using namespace std;class student{public: student() { cout

2018-01-20 16:30:31 215

原创 C++ 拷贝构造函数和赋值运算符(转)

本文主要介绍了拷贝构造函数和赋值运算符的区别,以及在什么时候调用拷贝构造函数、什么情况下调用赋值运算符。最后,简单的分析了下深拷贝和浅拷贝的问题。拷贝构造函数和赋值运算符在默认情况下(用户没有定义,但是也没有显式的删除),编译器会自动的隐式生成一个拷贝构造函数和赋值运算符。但用户可以使用delete来指定不生成拷贝构造函数和赋值运算符,这样的对象就不能通过值传递,也不能进行赋值运算。...

2018-01-19 11:29:02 75

原创 拷贝构造函数示例(重要)

[code="c++"]#include using namespace std;class A{public: A(int a = 1, int b = 2) //带默认形参值的构造函数 { x = a; y = b; } A(A& obj) //拷贝构造函数 { x = obj.x; y = obj.y; co...

2018-01-18 21:02:27 339

原创 默认参数的函数

[list][*]函数的缺省参数必须从右向左依次定义,即在模型形式参数的右边不能有缺省的形式参数比如:int fun(int a = 0, int b, int c = 0)[/list][code="c++"]#include//using namespace std; int distance(int x1,int y1,int x2=3,int y2=4);...

2018-01-18 14:49:34 89

原创 动态对象数组创建

[code="c++"]// 动态构建对象特点:/**** 1、在程序运行过程中创建和释放的变量或对象 位堆对象,分别用new 和 delete 运算符来完成。 2、堆动态对象为生存期可控对象,可以随时delete 释放 3、动态申请对象数组,该对象一定要有默认构造函数 或 构造函数最左形式参数一定要有默认值 ***/ #include using namespac...

2018-01-18 14:26:29 2889

原创 默认构造函数 与 默认形参构造函数

[list][*]带默认形参的构造函数与无参数的默认构造函数等价[*]在多个默认形参的构造函数中,第一个形式参数有默认值,编译器就认为是默认构造函数[/list][code="c++"]#include using namespace std;class A { public: A(){x=0;y=0;}//如果最左边有默认形参,则认为构造函数是默认构...

2018-01-18 14:02:07 1923

原创 符号重载

[code="c++"]/** @file list3201.cpp *//** Listing 32-1. Mystery Program */#include #include struct point{ point() : x_(0.0), y_(0.0) { std::cout

2018-01-18 09:33:25 365

原创 static 例子

[code="java"]#includeclass testStatic{ static int a,b; int c; public: testStatic( int _c):c(_c){ } static void output(testStatic & ts); int get();}; int testStatic::a = 1...

2018-01-17 09:16:14 157

原创 const 关键字总结

    C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助。Const 是C++中常用的类型修饰符,常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。 一、Const作用   如下表所示:No.作用说明参考代码...

2018-01-16 11:35:43 76

原创 指针的引用

[code="java"]#include//void swap(const int *&p1, const int *& p2) // int 之前加const会导致swap函数错误,const不能修饰引用,引用不是常量 void swap( int *&p1, int *& p2) //此处函数的形参p1, p2都是引用{// int *p;// *p=*p1;...

2018-01-16 11:35:30 61

原创 模板的特化

[code="java"]#include #include //1. 这里我们先声明了一个通用类型的模板类。这里要有类型参数必须包含hashCode()方法。 //否则,该类型在编译期实例化时将会导致编译失败。 template class CalcHashClass { //该类为标准模板类(等同于多态中的接口) ...

2018-01-16 10:34:06 72

原创 非类型模板参数

[code="java"]#include#include#includetemplateclass MyContainer { public: MyContainer(){ std::cout

2018-01-16 10:24:31 82

原创 缺省模板实参

[code="java"]#include#include#include//1. 第二个类型参数的缺省值是vectortemplateclass MyClass { public: T2 data; MyClass() { std::cout

2018-01-16 09:46:10 355

原创 c++ 模板类特化

[code="c++"]#include//1. 标准模板类。 template class MyClass { public: MyClass(){ std::cout

2018-01-15 16:44:20 522

原创 C++中的static关键字的总结(转)

C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。1.面向过程设计中的static1.1静态全局变量在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。我们先举一个静态全局变量的例子,如下: //Example 1#include <iostre...

2018-01-15 14:27:45 67

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除