- 博客(24)
- 收藏
- 关注
原创 lazy umount
在使用linux系统挂载U盘的时候我们jing ch请注意,该方法并不是完全安全的,lazy umount主要完成如下操作:立即从目录结构中实现卸载,即新进程将无法通过/media/disk访问/dev/sdb1正在访问该文件系统的程序不受影响。即正在操作/media/disk的进程不会被打断,且仍可以读写/dev/sdb1中的所有文件。如果所有进程对/media/disk的操作都
2014-08-04 17:28:09 1343
转载 C & C++的编译过程详解
C/C++编译过程C/C++编译过程主要分为4个过程1) 编译预处理2) 编译、优化阶段3) 汇编过程4) 链接程序一、编译预处理(1)宏定义指令,如#define Name TokenString,#undef等。 对于前一个伪指令,预编译所要做的是将程序中的所有Name用TokenString替换,但作为字符串常量的 Name则不被替换。对于后者
2014-07-30 11:43:26 410
转载 linux bash shell中,单引号、 双引号,反引号(``)的区别
一、单引号和双引号首先,单引号和双引号,都是为了解决中间有空格的问题。因为空格在linux中时作为一个很典型的分隔符,比如string1=this is astring,这样执行就会报错。为了避免这个问题,因此就产生了单引号和双引号。他们的区别在于,单引号将剥夺其中的所有字符的特殊含义,而双引号中的'$'(参数替换)和'`'(命令替换)是例外。所以,两者基本上没有什么区别,除非在内容中遇到
2014-07-23 21:21:36 714
转载 函数默认参数
在C++中,可以为参数指定默认值,C语言是不支持默认参数的,Java也不支持!!!默认参数的语法与使用:(1)在函数声明或定义时,直接对参数赋值。这就是默认参数;(2)在函数调用时,省略部分或全部参数。这时可以用默认参数来代替。注意事项:(1)函数默认值只能赋值一次,或者是在声明中,或者是在定义中,如下所示/*正确*/ #include iostream> int f(i
2014-07-23 10:22:33 499
转载 linux中shell变量$#,$@,$0,$1,$2的含义解释
变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。 $@ 所有参数列表。如"$@"用「"」括起来的情况、
2014-07-11 17:04:44 333
转载 linux inotify的一些细节知识
1. Inotify 机制概述1.1. Inotify 介绍在日常的运维过程中,经常需要备份某些文件,或者对系统的某些文件进行监控,比如重要的配置文件等。如果需要作到实时同步或者监控,就需要使用内核的inotify机制Inotify 是基于inode级别的文件系统监控技术,是一种强大的、细粒度的、异步的机制,它满足各种各样的文件监控需要,不仅限于安全和性能Inoti
2014-07-02 17:10:12 674
转载 c++ explicit关键字
按照默认规定,只有一个参数的构造函数也定义了一个隐式转换,将该构造函数对应数据类型的数据转换为该类对象,如下面所示:class String {String ( const char* p ); // 用C风格的字符串p作为初始化值//…}String s1 = “hello”; //OK 隐式转换,等价于String s1 = String(“hello”); 但是有
2014-06-12 23:06:26 352
转载 extern C的作用详解
extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern "C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。由于C++支持函数重载,因此编译器编译函数的过程中会将函数的参数类型也加到编译后的代码中,而不仅仅是函数名;而C语言并不支持函数重载,因此编译C语言代码的函数时不会带上函数的参数类型,一般之包括函数名。 这个功能十分有用处
2014-06-12 11:40:29 316
转载 C/C++中extern关键字详解
1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。此外extern也可用来进行链接指定。 也就是说extern有两个作用,第一个,当它与"C"一起连用时,如: extern "C" void fun(int a, int b);则告诉编译器在编译fun这个函数名时按着C的规则去翻译相应的函数名而
2014-06-12 11:26:56 332
原创 不常用的define
#define Conn(x,y) x##y#define ToChar(x) #@x#define ToString(x) #xx##y表示什么?表示x连接y,举例说:int n = Conn(123,456); 结果就是n=123456;char* str = Conn("asdf", "adf")结果就是 str = "asdfadf";怎么样,很神奇吧
2014-06-11 14:45:20 411
原创 Control Initialization and Layout
http://technet.microsoft.com/en-us/library/dd351483
2013-07-15 18:59:30 427
转载 常见的UML类图符号
继承在面向对象的设计中一个非常重要的概念,继承,指的是一个类(子类)继承另外的一个类(超类)的同一功能,并增加它自己的新功能。为了在一个类图上建模继承,从子类(要继承行为的类)拉出一条闭合的,单键头(或三角形)的实线指向超类。如下图所示关联实现接口聚合 聚合是一种特别类型的关联,用于描述“总体到局部
2013-07-10 16:36:23 772
原创 创建型模式之原型(ProtoType)模式
原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。使用原型模式创建对象比直接new一个对象在性能上要好的多,因为Object类的MemberwiseClone方法是一个本地方法,它直接操作内存中的二进制流,特别是复制大对象时,性能的差别非常明显。使用原型模式的另一个好处是简化对象的创建,使得创建对象就像我们在编辑文档时的复制粘贴一样简单。因
2013-07-10 16:23:27 453
原创 创建型模式之建造者(Builder)模式
《设计模式》一书中对于建造者模式是这样定义的:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。其实建造者模式就是用来创建复合对象,并把复合对象的创建过程加以抽象,通过子类继承和重载的方式,动态地创建具有复合属性的对象。有点拗口,首先我们来看看它的UML图:public class SoccerPlayer { List
2013-07-10 15:42:44 572
转载 C#静态构造函数
在写单例模式的时候碰到了静态构造函数,在此转载一篇,个人感觉解释的还是很清楚的。静态构造函数是C#的一个新特性,在编程过程中用处并不广,它的主要目的是用于初始化一些静态的变量。因为这个构造函数是属于类的,而不属于任何一个实例,所以这个构造函数只会被执行一次,而且是在创建此类的第一个实例或引用任何静态成员之前,由.NET自动调用。在程序中我们可以这样写:class SimpleC
2013-07-10 00:03:52 573
原创 创建型模式之单例模式
只能生成一个实例的类是实现了Singleton模式的类型。写法一:一次加锁,两次判空public sealed class Singleton { private Singleton() { } private static object syncObj = new object(); privat
2013-07-09 23:56:17 367
原创 创建型模式之工厂方法模式
public interface 足球运动员{ public void run(); public void jump();}public class 前锋 : 足球运动员{ public void run() { } public void jump() { }}public class 后卫 : 足球运动员{ public void run() { }
2013-07-04 21:18:39 400
原创 创建型模式之简单工厂模式
简单工厂模式的基本原理,创建一个抽象,由该抽象来决定要返回的可能的几个类是哪些,接着简单工厂返回其中之一,然后就可在无需知道真正使用的是哪个子类的情况下调用返回的类实例的方法。这一做法把数据依赖问题与类的实用方法隔离开来。public interface 足球运动员{ public void run(); public void jump();}public class 前锋 :
2013-07-04 21:01:02 455
原创 常见的笔试面试题(持续更新)
◆ 利用命令行 netstat -a -n查看当前系统正在进行通信的协议端口。◆ 关于Web2.0,并没有一个统一的定义,它通常是指注重用户的交互作用,强调用户的广泛和深入参与,被认为是下一代的软件设计模式和商业模式,比如论坛、名人博客等。◆ 最早而是最著名的微博是美国的Twitter。◆ RSS订阅,采用推技术将订阅的页面发送到客户的RSS阅读器或者Web浏览器中。提供R
2013-06-03 00:03:03 592
原创 正式开通技术博客,mark一下
马上就要离开学校了,距离正式踏上工作岗位还有20天,所以开通技术博客,祝愿自己能在工作中学到真正的技术,开发出优秀的产品。
2013-06-02 22:08:09 448
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人