10 brahmsjiang

尚未进行身份认证

暂无相关描述

等级
博文 54
排名 12w+

Can't load IA 32-bit .dll on a AMD 64-bit platform错误的解决

经提醒该软件需要JDK32bit。我安装jdk1.8.0_131以及jre1.8.0_131,并且设置了环境变量java_home和jre_home。然后在cmd键入java-version依然显示老版本64bit。原来本机已安装较高版本java,此时设置的java_home和jre_home会被劫持。解决方法:查找java位置,cmd键入wherejava。将显示的j...

2019-04-08 18:17:25

cmake要点记录

概述新建一个工程要做的操作大概是如下几步:1新建项目2新建c++文件3在c++文件内编写程序4添加源/头文件进工程当我们已得到源码.cpp,这时我们再建立工程的步骤就更加简单了,只需要进行第1步和第4步即可。CMake的作用就是帮助你在拥有源码的情况下帮助你实现第1步和第4步的。如果一个框架由多个互相调用的工程共同组成,一些用于生成库文件,一些用于实现逻辑功能。他...

2019-03-08 15:28:05

C++对象数组的初始化

如果一个类有默认的构造函数,使用new动态实例化一个对象数组不是件难事,如下代码:classanimal{public:animal():num(0){}~animal(){}private:intnum;};Animal*ani=newAnimal[5];delete[]ani;然而newObj[n]的形式...

2019-03-08 14:50:33

Python openpyxl模块使用方法更新

openpyxl模块介绍  openpyxl模块是一个读写Excel文档的Python库,能同时读取和修改Excel文档。openpyxl使用方法更新  openpyxl2.4及后续版本对使用方法做了一部分的更新,使用老方法可能会报warning或error。Workbook提供的方法比对如下:get_sheet_names:获取所有表格的名称(新版不建议使用,通过Workboo...

2018-10-12 17:45:08

Ubuntu搭建breakpad环境及查看dmp文件

1.随便建一个文件夹作为所有的目录,现在是dmp文件夹2.把obj/local/armeabi-v7a下的so和dmp文件复制到下面例如现在是libbreakpad_client.so和7f0a5ae5-4ea2-150e-55e9b70e-05c9ae40.dmp3.生成sym文件dump_symslibbreakpad_clien...

2018-09-30 14:18:57

用std::map、std::sort、冒泡对deque进行排序(C/C++)

同样是一道面试题,函数参数类型是deque。deque是双端队列属于动态数组类型,本身不支持sort,只有借助其他算法或者支持排序的容器,拷贝回deque。(练习而已,时间空间复杂度不考虑了)一、直接调std::sort,参数分别为起始迭代器,结尾迭代器(指向末元素的后面一个):#include<iostream>#include<deque>#include&l...

2018-03-10 01:36:26

Effective C++ (E3 10、11)笔记之在operator=中返回*this、处理自我赋值

为了实现“连锁赋值”,即 Widgetwig4,wig3; wig3.printname(); wig4.printname(); //continousassigiment wig4=wig3=wig1; wig3.printname(); wig4.printname();operator=必须返回一个reference指向操作符的左侧实参。这项不成文的规定同样适用于其他赋值...

2018-03-10 00:33:59

单链表的创建和反转(C语言)

总是会想,等进入一个相对稳定的公司(环境)后,我再努力,再搞数据结构和算法、再搞懂公司的框架、再学好shell和python,时间总是充裕的。殊不知秉承着这样的思想,只是吃不起苦而找借口的一种变体罢了。生活总会以平等的方式来回报你。只要涉及当场手写代码的面试便碰壁,目前为止顺利的只有创业型小公司和外包而已。这想必也反映了我现在的水平吧。我祈求自己以后能将每一天物尽其用,走出自我易满足而选择ea

2018-03-03 14:01:33

stdarg.h 可变参数宏的使用

要实现一个可变参数的函数,流程如下:1.定义一个函数,该函数有固定参数,且最后一个固定参数后面是可变参数(用“...”表示)2.在该函数体内定义va_list类型的变量3.用va_start宏将该变量初始化为一个参数列表,其指向可变参数列表的第一个元素(即在使用时,匹配固定参数后面的第一个实参)4.将此变量作为va_arg宏或vsnprintf等函数的参数,访问这个可变参数列表里面的元素5.用va...

2018-02-25 01:14:55

GDB常用调试命令以及多进程多线程调试

今天把所有的GDB常用的调试命令都过了一遍,尤其是多线程调试。所以先做个总结,以免忘记。以后如果有新的有用的命令会继续追加。  本文地址:(LYanger的博客:http://blog.csdn.net/freeelinux/article/details/53700266)一:普通命令1.list命令list linenum   显示程序第linenum行周围的程序list fun

2018-02-12 18:01:05

Effective C++ (E3 43)笔记之学会处理模板化基类内的名称

有个程序要传送信息到不同公司,信息可能是密码也可以能使未经处理的。传送的不同公司的代码不同,在编译期间我们有足够信息决定传送到哪一个公司,于是采用基于template的解法:classCompanyA{public: voidsendClrText(conststd::string&str) { cout"<<str.data()<<endl; } voidsend

2018-02-04 17:20:34

Effective C++ (E3 1)笔记之视C++为一个语言联邦

应该将C++视为一个由相关语言组成的语言联邦而非单一语言。其主要的次语言一共有四个:C面向过程部分,包括区块、语句、预处理器、内置数据类型、数组、指针等。面对一些问题时,C++只不过是高级的C解法。但是注意,C没有C++的模板、异常、重载。。。面向对象C++面向对象部分,包括类(构造析构)、封装、继承、多态等。是面向对象设计之古典守则在C++上最直接的实施。TemplateC

2018-02-04 15:49:33

Effective C++ (E3 42)笔记之了解typename的双重意义、嵌套类型的使用

templateclassWidget;templateclassWidget;对于这两个声明式,在声明模板参数时,关键字class和typename意义完全相同。然后有时,却只能使用typename。如有以下模板:templatevoidprint2nd(constC&container){ if(container.size()>=2){ typena

2018-02-04 15:08:57

Effective C++ (E3 41)笔记之了解隐式接口和编译器多态

对于class而言,接口是显式的,以函数签名式(函数名、参数类型、返回类型)为根基。多态则是通过virtual函数发生在运行期。如有个类widget:classWidget{public: Widget(std::stringname="default",std::size_tsize=0) :sname(name),ssize(size) { } Widget

2018-02-04 14:02:06

Effective C++ (E3 25)笔记之写一个不抛异常的swap函数

STL的swap可以说是异常安全编程的脊柱,以及是用来处理自我复制可能性的一个常见机制。典型实现如下:namespacestd{ template voidswap(T&a,T&b) { Ttemp(a); a=b; b=temp; }}但其用到三个对象的复制,即a复制到temp,b赋值到a,temp赋值到b。对于某些handle类(使用pim

2018-02-03 12:38:03

Effective C++ (E3 28)笔记之避免返回指向对象内部成分的handles、浅拷贝与深拷贝的探讨

篇幅较长,先按部就班地从类的实现开始讨论吧。比如一个类用于表示“点”:classpoint{public: point(intxx=0,intyy=0) :x(xx),y(yy) { cout<<"pointcons"<<endl; } point(constpoint&pt) //可访问性是相对于类型来说的,而不是实例 :x(pt.x),y(pt.y)

2018-01-27 01:34:48

Effective C++ (E3 37)笔记之不重新指定继承而来的默认参数值

有个抽象类表示形状,其中纯虚函数draw有默认形参:classshape{public: enumshapecolor{Red,Green,Blue}; virtualvoiddraw(shapecolorcol=Red)const=0; std::stringretcol(shapecolorcol)const{ std::stringstr; swi

2018-01-26 23:18:47

Effective C++ (E3 24)笔记之使用非成员函数重载多元运算符,以支持所有参数被隐式转换

建立数值类型时,令class支持隐式类型转换是合理的。如果想通过运算符重载来世类对象支持算术运算,那么该选择成员函数、非成员函数还有友元函数?假设此类描述有理数:classrational{public: rational(intnum=0,intdeno=1) :m_num(num),m_deno(deno){} intretnum()const{ ret

2018-01-26 00:09:32

Effective C++ (E3 22、23)笔记之成员变量声明为private、以非成员非友元函数替代成员函数

成员变量就应该是private。理由一:语法一致性。对客户而言每样东西都是函数。理由二:可通过成员函数严格控制其读写权限、添加约束条件。根本理由:封装性。声明为private则客户只能通过函数接口访问,客户不用关心实现方法,这为“所有可能实现”提供了弹性。并且以接口替代直接对变量的访问,从代码破坏量来说,前者将远远小于后者。客户很可能只需重新编译,甚至可以消除重新编译(条款31)。

2018-01-24 22:03:10

Effective C++ (E3 26)笔记之延后变量定义的时间

如果定义一个变量并且需要承受其构造和析构成本,那么应尽量直到使用该变量的前一个时刻才将其定义。若是提前定义而最终未使用该变量,则耗费构造、析构成本不可避免。有个加密password的函数,返回加密后password的字符串,见示例:std::stringencryptPswd(conststd::string&pswd){ if(pswd.length()<minpass

2018-01-20 18:49:29
奖章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!