C/C++ 知识点---sizeof使用规则及陷阱分析 原文出处:[胖奇的专栏] 1.什么是sizeof 首先看一下sizeof在msdn上的定义:     The sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). This keyword returns a value of type size_t.  看…
提示:下文例子都经过Visual C++ 6.0验证,平台为win32 Windows. 一.什么是sizeof 首先看一下sizeof在msdn上的定义: The sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). This keyword returns a value of type size_t. 看到…
http://www.cnblogs.com/chio/archive/2007/06/11/778934.html sizeof不是函数,更像一个特殊的宏,它是在编译阶段求值得.sizeof作用范围内即()里面的内容是被替换成类型 ; cout << == ) << endl; cout << ) << endl; cout << a << endl; 输出1,4,0 sizeof有两种用法: (1)sizeof(object) 或…
转自对C语言中sizeof细节的三点分析 1.sizeof是运算符,跟加减乘除的性质其实是一样的,在编译的时候进行执行,而不是在运行时才执行. 那么如果编程中验证这一点呢?ps:这是前两天朋友淘宝面试的一道题,北庚理解: #include<iostream> using namespace std; int main() { int i=1; cout<<i<<endl; sizeof(++i); cout<<i<<endl; return 1;…
3 模型中规则制定和分析 YII模型主要分为两类,一个数据模型,处理和数据库相关的增删改查.继承CActiveRecord.还有一个是表单模型,继承CFormModel.不与数据库进行交互.操作与数据模型保持一致. 先分析数据模型: 数据模型基本包括四个方法.这里有两个须要注意的地方: 1 还记得视图中有确认password选项吗?数据库中没有这一个字段,不进行处理的话.程序会报错 处理方法:声明这样变量,并将这个变量进行label映射 例如以下: public $password2; // /…
MyBatis参数的传递有几种不同的方法,本文通过测试用例出发,对其中的方式进行总结和说明,并对其部分源码进行分析. 一.测试用例(环境参考之前博客SSM接口编程一文 http://www.cnblogs.com/gzy-blog/p/6052185.html) 1.1 没有注解,即dao层的代码如下: public User findById(int id); public User findByIdAndName1(int id, String name); public User find…
0. 前言 这篇文章主要记录在使用epoll实现NIO接入时所遇到的问题. 1. epoll简介 epoll是Linux下提供的NIO,其主要有两种模式,ET(Edge trige)和LT(Level trige).在linux下使用man epoll手册即可知道这两种模式主要的区别: ET:边缘触发,故名思议,所添加的描述符,只在当其改变状态的时候才会触发一次,就如同数电里面电平的边缘触发. 在man里面列举了一个例子,当一个fd添加到epoll中时,当有2KB数据到达时,epoll_wait…
在老大的指引下,需要将系统的json文件格式转换成apidoc的json格式,也就是json格式的重组,但是这个apidoc的生成格式是不固定的,因为apidoc有自己一套的生成规则,我需要研究一下是怎么生成的. 一.官方基础栗子 二.理解apidoc生成静态文档的结构解读 三.深入理解一下apidoc生成原理以及规则 一.apidoc基础栗子 全局安装apidoc npm install apidoc -g 1.首先建立文件目录 2.需要你在input文件夹里面写上你的js部分 这个是栗子的j…
最近工作中有接触到DelayQueue,网上搜索资料的时候发现一篇文章谈到DelayQueue的坑.点击打开链接 文中已经总结了遇到坑的地方,还有解决方案.不过我第一眼看一下没弄明白为什么,所以翻了翻源码深究了一下,下面把这个坑的原因以及原理分析一下. 首先是DelayQueue的take()方法: public E take() throws InterruptedException { final ReentrantLock lock = this.lock; lock.lockInterr…
包装类 什么是包装类 虽然 Java 语言是典型的面向对象编程语言,但其中的八种基本数据类型并不支持面向对象编程,基本类型的数据不具备“对象”的特性——不携带属性.没有方法可调用. 沿用它们只是为了迎合人类根深蒂固的习惯,并的确能简单.有效地进行常规数据处理.这种借助于非面向对象技术的做法有时也会带来不便.比如: 编码过程中只接收对象的情况,比如List中只能存入对象,不能存入基本数据类型:比如一个方法的参数是Object时,不能传入基本数据类型,但可以传入对应的包装类: 比如泛型等等. 基本数…