`
shaxquan
  • 浏览: 13664 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
最近访客 更多访客>>
社区版块
存档分类
最新评论
文章列表
本人博客转到 http://shaxquan.blog.51cto.com/  了,欢迎参观
一下这段代码可以很清晰的表述出这四个函数的区别 ilist是一个list<int>类型 if (!ilist.empty()) {   // val 和val2 指向相同的元素 list<int>::reference val = *ilist.begin(); list<int>::reference val2 = ilist.front();   // last 和last2指向相同的元素 list<int>::reference ...

初始化static成员

    博客分类:
  • C++
  //Cat.h class Cat { public: Cat(int age):its_age(age) { HowManyCats++; } virtual ~Cat() { HowManyCats--; } virtual int get_age(); virtual void set_age(int); static int get_how_many() {return HowManyCats;} private: int its_age; static int HowManyCats; };   //Cat.cpp ...
int fn(int i) {     if(1==i)     {         return 1;      }    else     {        return i*fn(i-1);      } }    
要使C++程序在main函数退出后继续执行代码,可以使用atexit()函数注册一个函数。 一般在SDL等图形库程序中,在main函数退出时要继续执行一些代码来关闭图形库的使用,释放图像等占用的内存资源,进行一些收尾工作。
在C程序中, const的用法主要有定义常量、修饰函数参数、修饰函数返回值等。在C++中,还可以修饰函数的定义体,定义类中的某个成员函数为const函数,即不改变类中的数据成员值。
对于一个空类,编译器默认产生4个默认成员函数,默认构造函数,析构函数,拷贝构造函数和赋值函数。
C++支持函数重载,C不支持函数重载,函数被C++编译后在库中的名字与C不同。假设某个函数的原型为:void foo(int x, int y)。 该函数被C编译器编译后在库中的名字为_foo, 而C++编译器则会产生像_foo_int_int之类的名字。 C++提供了C连接交换指定符号extern "C"解决名字匹配问题。
最近一直在使用opensuse 11.2,之前听说这个发行版本是linux中最华丽的,因为以前用过ubuntu,使用上很方便,感觉跟windows已经很接近了,用windows用腻了,一直想换个系统使用,看到了opensuse觉得不错,界面很漂亮, 所以下载了dvd镜像,一路安装过来,大部分选择默认选项,其中我选择安装kde桌面,因为kde比gnome更漂亮。很快就安装好了,我用的是thinkpad的T61,安装过程中就安装nvidia的显卡驱动有点麻烦,其余的都很顺利。驱动安装方法可以参见http://en.opensuse.org/Configuring_graphics_cards,要选择 ...

指针和引用的差别

    博客分类:
  • C++
纯当给自己复习了,总结一下: 1. 非空区别 任何情况下都不能使用指向空值的引用。一个引用必须总是指向某些对象。如果使用一个变量并让它指向一个对象,但是该变量在某些时候也可能不指向任何对象,这是应该把该变量声明为指针,因为这样可以赋空值给该变量。不存在指向空值的引用这个事实意味着使用引用的代码效率比使用指针要高。 2.合法性区别 在使用引用之前不需要测试它的合法性。相反, 指针则应该总是被测试,防止其为空。 3.可修改性区别 指针与引用的另一个重要的不同是指针可以被重新赋值以指向另一个不同的对象。但是引用则总是指向在初始化时被指定的对象,以后不能改变,但是指定的对象其内容可以改 ...
1. 多看示例代码阅读通常只是关于单词的,而学习编程则是关于代码的。当你第一次学习编程时,你应该确保多看,并试着理解每个例子。 2. 不要只是看,要动手运行但是当你阅读编程手册时,你很容易在看到示例代码后对自己说:这个我会,就是这个意思。当然,你可能确实会,当时也有可能你没有完全理解。有个方法可以监测你是否真的会,那就是试着将这个例子重新做一遍,然后试着修改这个例子,你可以尝试修改,实验一些新的东西,看看会得出什么结果。 3.尽快编写自己的代码。一旦你理解了编程语言的某个知识点,或者即使你仍旧对某个地方不是很理解,你也要开始编写自己的示例代码来使用这个知识点,刚开始你不用把你所知道的 ...
     "You can't wait for inspiration, You have to go after it with a club" -- Jack London      我们都有过这样的经历, 当我们想要激情,想要灵感的时候,灵感却偏偏跑的无影无踪了。      灵感是什么?很多人认为灵感是不可捉摸,飘忽不定的东西,不能去强求,但是如果你去寻找确实又可以找到的。灵感就是如果你去寻找,你可以在任何地方都能找到,这是关键:睁大你的眼睛。我们经常错失一些可以激发我们灵感的东西,因为太多的时间花在思考其他的事情上了。其实多观察周围的东西,这些都会是激发你灵感的 ...
每天还是那些事情,IT生活有时真的是很枯燥,每天打开IDE,同时打开需求说明,将自然语言的需求说明编程java代码,有时候就是改一些issue,修正一些bug,犹如流水线上的操作工,不断修改代码,将原材料组装成产品发售,从中拿到一点可怜的辛苦费,这应该就是国内标准的IT蓝领了。多久之前,IT业还是一个令人向往的行业,一个真正的高科技领域,有着一帮高智商的人群,挥洒自己的激情,写着神奇的软件。然而行业毕竟是行业,需要太多的底层人员来支撑,产品中真正需要高超的技术的地方毕竟是少数,堆积成产品的大部分还是一些无聊的,繁琐的代码。这跟以自己的兴趣而写出来的东西差别太大了,因为自己写的可能根本没想过把他作 ...
Global site tag (gtag.js) - Google Analytics