1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
| #include <iostream>
#include <new>
#include <cstdlib>
#define __OUTPUT_FUNC_NAME__ std::cout << __FUNCTION__ \
<<"\tthis =\t" << this << std::endl;
class Foo
{
public:
Foo()
{
__OUTPUT_FUNC_NAME__
}
virtual ~Foo()
{
__OUTPUT_FUNC_NAME__
}
};
int main()
{
Foo *psingle = new Foo;
delete psingle;
std::cout << __LINE__ <<std::endl;
Foo *psingle_nothrow = new(std::nothrow) Foo();
delete psingle_nothrow;
std::cout << __LINE__ <<std::endl;
Foo *parray = new Foo[5];
delete[] parray;
std::cout << __LINE__ <<std::endl;
Foo *parray_nothrow = new(std::nothrow) Foo[5];
delete[] parray_nothrow;
std::cout << __LINE__ <<std::endl;
Foo *praw = (Foo *)malloc(sizeof Foo);
new(praw) Foo;
praw->~Foo();
free(praw);
std::cout << __LINE__ <<std::endl;
Foo *praw_array = (Foo *)malloc(sizeof(Foo) * 5);
for(int i=0; i<5; ++i)
{
new(praw_array+i)Foo();
}
for(int i=0; i<5; ++i)
{
(praw_array+i)->~Foo();
}
free(praw_array);
return 0;
} |
上面这段代码可以用VS2010编译通过并运行。
第7~18行,是一个类Foo,用来示例的。
第22行,是普通的new, 创建单个的对象。如果new分配空间失败,则抛出异常。
第23行,是普通的delete,销毁单个的对象。
第26行,nothrow new,也就是说,当new分配空间失败时,只返回NULL,不会抛出异常。
第30行,new了一个数组。
第31行,将数组delete。
第39行,placement new, 已经有空间了,不用new去分配空间,直接在已经存在的空间上调用构造函数。
第40行,将其销毁。
第44行,申请了一个数组。第45~49行,一个一个地placement new,第50~53行,一个一个地placement delete. 有人会问:为什么不用placement new[], 答:不会,请多指教。
通过以上代码,对new有了直观的认识。new首先会分配空间,然后在得到的空间上调用构造函数。
怎么分配空间?用operator new函数。
分配空间失败了怎么办?如果是普通形式的new,抛出异常;如果是nothrow形式的new,返回NULL。
operator new函数有哪些?且听下回分解。
十八号入职到现在,已经两周了。
这两周来,一直在接受培训。讲讲公司的制度等等。上周五,逛了逛上海,去了好几个地方,东方明珠、七宝古镇、人民公园、田字坊等等。当天挺热的。
有好几次去复旦吃中午饭,光华楼真高。
要开始学习了,老大昨天告诉我,下周要向两个老员工学习存储方面的知识了。这两个老员工,其中有一个是东南大学计算机系汪芸老师的学生,比我高四级。
这一次入职的新员工中,大多来自上交、复旦、北大、南大、浙大、中科院、北邮、北航、人大、同济、东南、中山、华科、武大、中科大、西交、川大、电子科大、重邮、上大,基本上都来自国内最NB的几十所学校,我感觉压力很大。
公司新开了个成都研发中心,这样,公司在中国大陆一共有三个研发中心了,另两个在上海和北京。另外,公司还有印度、爱尔兰、以色列特拉维夫等等数个研发中心。
了解了一些存储方面的基础知识以及公司的产品。公司的产品有Symmetrics、Centera、Celerra、CLARiiON,Celerra和CLARiiON已经成为历史了,现在将这两者合称为VNX。存储方面的基础知识包括SAN、NAS、RAID。还了解到VMware、RSA等等也算我们公司的,我们公司持有VMware 80%的股份。
今天公司进行了成立五周年庆典,好几个BOSS上台发表讲话,还给员工颁奖,最后吃蛋糕。
乐队唱歌挺好听的,唱了好几首,加州旅馆、春天里等等。
至今天,为期两周的入职培训也结束了,大BOSS还给每位新员工颁发了毕业证,呵呵。证上有我们的相片,另外还送了每位新员工两本书,其中一本是《高效能人士的七个习惯》。
呵呵,其实也不是训话,就是提醒一下刚入职的同学们:入职后的六个月至关重要!要踏踏实实!
马上又要高考了。在我家那儿,高考完后接着是中考。今天表弟参加中考。
考试,在我家乡,是普通人家的孩子看到的两条出路之一,另一条出路是打工(外出或在家干点什么)。中考高考其实也没那么重要,考上好的高中然后又考上了好的大学又怎么样呢?能留在大城市里又怎么样呢?
我有个哥哥,他学习不好,中考上没考上高中,读了个中专,然后呆在一个养殖厂里好多年,现在自己开了个卖电动车的小店,自己给自己打工,养家糊口没大问题。哥哥有房,是老爸给他盖的,不盖房娶不到老婆啊;哥哥有个摩托车和一个三轮摩托车;有了一个儿子和一个女儿,真好。如果他上学到大城市就惨了,像我一样;不可能有房了,家里哪拿得出几十万甚至上百万;开个小店也可能不行,大城市的门面贵啊;养活两个孩子,做梦吧。所以啊,上学不好挺好的。
哥哥常常羡慕我可以呆在大城市,我常常羡慕他轻松的生活。我现在的确呆在一个大城市里,但这个城市和我有什么关系?我走在宽阔的大路上,两旁高楼林立,和我有什么关系?身旁常常开过一辆辆奔驰奥迪宝马,和我有什么关系?我也去过大商场,里面的一件衣服上千块,和我有什么关系?也去过日本料理,如果不是同学请客,这和我有什么关系?大城市的空气不好,这倒是影响着我。哥哥轻松地生活着,卖卖电动车,修修电动车,其实他还卖些粮油等等,没任何压力;每到下午五六点钟的时候,收拾东西关店,如果天气比较热,再跟我嫂子去请示晚饭能不能加瓶啤酒
,多自在。
在家活得也挺好的,考上大学也挺惨的,所以我觉得,高考考好考差无关紧要,想通过上学改变命运,好难!社会阶层已经固化了,这是个拼爹的时代。
当然,对于普通人家的孩子,如果能考上好一点的大学,出来读读也可以,但要选个工科专业,尽量不要选文科专业。读个工科专业,说白了就是学门手艺,荒年饿不死手艺人,在当前难找工作的情况下,找工作的时候也比文科好一点;学个文科专业,如果家里没后台,找起工作来比工科难多了。以上只适合普通情况,NB大学的文科专业不包括在内。我觉得计算机专业就挺好的,只要努力,只要下功夫,就能成个代码熟练工,就不愁没工作。如果考不上好一点的大学,先读一个差一点的,再考个研也不错,考研比高考容易些,大概是因为很多NB的人直接工作了,不来竞争了。如果家里条件不好,早工作可能比读研更好,我现在就有些后悔读研(有多方面原因)。
例子脚本如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| #!/bin/sh
#FTP的地址,用户名和密码
HOST=10.3.16.1
USER=anonymous
PASS=anonymous
echo “Starting to ftp…”
#登陆FTP
lftp -u ${USER},${PASS} ftp://${HOST} <<EOF
#这是lftp的命令了。进入soft文件夹下面的y86文件夹
cd soft/y86
#下载shell脚本的第一个参数指定的文件名
get $1
bye
EOF
echo “done” |
从网上抄的,稍改了一下,能运行。不错。
比如用把它存成ftp.sh,运行时
sh ftp.sh sim.tar
就会把sim.tar下载到当前文件夹。
今天给家人打电话,跟外婆、三姨和我妈聊天。
跟外婆聊,就是她问我吃了没等等。跟三姨聊,也是叮嘱我要吃好点,注意身体。跟我妈聊,我说很担心能不能毕业,担心再延期。哎,很多事情不是我能控制的,具体什么情况就不说了。郁闷不爽。我妈说,毕业不了也没啥,还是个本科生呢,也别烦,烦也没用,事儿大事儿小,到时候就了(应该念liao,三声,呵呵)。让我宽心不少,呵呵。
其实也没啥,毕业不了,丢了工作,再找呗,跟用人单位说清楚情况就可以了。就像找工作的时候,很多公司问我为什么不去实习,我如实解释,人家很理解。如果丢了工作再找工作,人家问我原因的时候,如实解释,人家肯定也会理解的。呵呵。先安慰一下自己。
很久很久以前,在一篇博客上看到了10000小时的理论。其后,又常常见到。今天,我又在刘爱贵大侠的“从研发角度谈存储技术的学习”一文中看到了。
10000小时的理论大意就是:如果你想成为某个领域的专家,那么大概需要10000小时的努力。
可以Google一下“10000小时 专家”或者”10000 hour expert”,都可以搜到一些文章。
好了,理论归理论,这个理论对于我们普通人有什么用呢?
它告诉我们,大牛是可以用努力炼成的。大牛不是遥不可及,只要努力就可以!!!!!
想一想我的同学们,那些大牛都是非常努力的,不管是男的还是女的高矮胖瘦。比如说本科的同学陈力,他常常学习到深夜(他们宿舍的人常常说)。像这样的同学还有不少,比如王楠的老婆王慧芹(注:这儿的王楠是我的本科同学,也会打乒乓球),还有沈莉霞(有几次晚上11点多遇到王慧芹和沈莉霞从第一教学楼出来。南理工的第一教学楼是可以通宵的),李明同学在学习方面也相当狠啊,学起来不要命啊。很多人都是通过努力达到NB的。
不怎么努力就很牛,这样的人有吗?当然有,那是天才,那是极少数人。我们不能指望这样的小概率的好事儿发生在自己身上,绝大多数人都不是天才,绝大多数人都是普通人。
努力努力再努力!怎么努力都不为过。当然,要先找到个方向,这样才有动力才有效率,努力着才有劲儿。