我个人的理解String x="bv";这个是在栈中创建的,栈中的数据具有不可更改性,就是说你再创建一个String y="bv";它会先在栈中寻找字面值为bv的地址,如果存在这样的地址就指向它(否则就在栈中新开辟一个字面值为bv的内存地址) 因此这儿x==y 因为他们指向同一块内存地址 无论== ...
分类:
编程语言 时间:
2014-09-12 18:52:43
阅读次数:
209
C语言的显式/隐式类型转换,都有一个中间变量的存在,原数据的类型、内容都不变。以下代码,都用GCC编译。 1 #include 2 3 int main() 4 { 5 printf("%d %d\n", 'a', sizeof((int)'a')); //输出为97,4. siz...
分类:
编程语言 时间:
2014-09-01 17:11:03
阅读次数:
308
4.3 C 风格字符串
尽管 C++ 支持 C 风格字符串,但不应该在 C++ 程序中使用这个类型。C 风格字符串常常带来许多错误,是导致大量安全问题的根源。
在前面我们第一次使用了字符串字面值,并了解字符串字面值的类型是字符常量的数组,现在可以更明确地认识到:字符串字面值的类型就是const char 类型的数组。C++ 从 C 语言继承下来的一种通用结构是C 风格字符串,而字...
分类:
编程语言 时间:
2014-08-30 11:18:29
阅读次数:
338
每一个表达式都有一个结果,字面值常量也是表达式,其结果就是值本身。除了特殊用法外表达式的结果是右值。是左值的情况也有,比如++i;这个表达式就是一个左值;还有逗号运算符的结果是表达式最右侧操作符德值,如果最右是一个左值的话,那整个逗号表达式就是左值。
表达式涉及到操作符和操作数,操作符有优先级规则,有结合性,还有操作数的求值顺序。就操作数的求值顺序而言,比如f1() * f2();两个函数...
分类:
编程语言 时间:
2014-08-23 17:46:11
阅读次数:
229
spring中Bean的注入参数详解:字面值、引用其他Bean、集合类型属性、自动装配
分类:
编程语言 时间:
2014-08-21 16:27:14
阅读次数:
238
1. 11g之前的绑定变量窥视
我们都知道,为了能够让SQL语句共享执行计划,oracle始终都是强调在进行应用系统的设计时,必须使用绑定变量,也就是用一个变量来代替原来出现在SQL语句里的字面值。比如,对于下面三条SQL语句来说:
select col1 from t where col2 = 1;
select col1 from t where col2 = 2;
...
分类:
数据库 时间:
2014-08-19 01:01:53
阅读次数:
444
一、const常量声明时必须同时初始化(和“引用”一样)二、const指针三、const引用引用本身和引用的对象都是const对象,可以用字面值来赋给const引用(普通引用则不行)1 const B=1024;2 const refB=B; //const变量的声明和初始化 3 4 const i...
分类:
编程语言 时间:
2014-08-17 16:53:52
阅读次数:
176
聚合类聚合类使得用户可以直接访问其成员,并且具有特殊的初始化语法形式。当一个类满足如下条件时,我们说它是聚合的:所有成员都是public的没有定义任何构造函数没有类内初始化没有基类,也没用virtual函数。下面的类都是一个聚合类struct Data{ int ival; string s;}.....
分类:
其他好文 时间:
2014-08-09 21:04:49
阅读次数:
237
赋值运算符的左侧运算对象必须是一个可修改的左值,如果给定int i=0,j=0,k=0; //初始化而非赋值const int ci=i; //初始化而非赋值则下面的赋值语句都是非法的:1024=k ; //错误:字面值是右值i+j=k; //错误:算术表达式是右值ci=k;//错误:ci是常量.....
分类:
其他好文 时间:
2014-08-04 20:48:27
阅读次数:
200
一、定义 数组的维数必须用大于等于1的常量表达式来定义 整形字面值常量、枚举常量或者常量表达式初始化的整形const对象; 二、初始化 1、显示初始化数组元素 *在函数体外定义的内置数组,其元素均初始化为0; *在函数体内定义的内置数组,其元素无初始化; *不管数组在哪里定义,如果其元素为类类型,则...
分类:
其他好文 时间:
2014-08-04 04:10:16
阅读次数:
219