
C++
文章平均质量分 79
fage87295970
我是一个简单的人
展开
-
函数指针和指针函数
【函数指针】 在程序运行中,函数代码是程序的算法指令部分,它们和数组一样也占用存储空间,都有相应的地址。可以使用指针变量指向数组的首地址,也可以使用指针变量指向函数代码的首地址,指向函数代码首地址的指针变量称为函数指针。1.函数指针定义函数类型 (*指针变量名)(形参列表);“函数类型”说明函数的返回类型,由于“()”的优先级高于“*”,所以指针变量名外的括号必不可少,后面原创 2010-02-27 22:51:00 · 545 阅读 · 0 评论 -
C++ 11 tuple & 可变参数模板
C++ 11中引入的tuple是一个N元组。它相当于有N个成员的结构体,只不过这个结构体的成员都是匿名的。tuple中有两个特殊的函数,一个是head(),用于获取第一个成员的值,另一个是tail(),用于获取剩下所有成员的值,tail()本身又是一个tuple。这样,如果我们想取tuple中第二个成员的值,则可以先取tail()的值,再取tail()的head()的值。当然,这样使用的话比较麻烦转载 2013-09-07 19:05:59 · 1216 阅读 · 0 评论 -
可变参数模板(Variadic Templates)
可变参数模板要解决的问题:怎么创建一个拥有1个、2个或者更多的初始化器的类?怎么避免创建一个实例而只拷贝部分的结果?怎么创建一个元组?最后的问题是关键所在:考虑一下元组!如果你能创建并且访问一般的元组,那么剩下的问题也将迎刃而解。这里有一个例子(摘自“可变参数模板简述(A brief introduction to Variadic templates)”(参见参考转载 2013-09-07 19:01:57 · 1265 阅读 · 0 评论 -
简易的灰度处理
近期在进行自绘控件的开发时,时常用到灰度图像。譬如真彩色工具条中的Disable状态的图标,譬如真彩菜单Disable状态的图标等。照常来说,可以让控件的使用者去制作相应的图标。然而,为了让控件的使用者在使用控件时尽量简单,一个比较好的办法是在程序中生成Disable状态的图标。本文提供了一个简单的封装类CGrayBitmap,使用它的静态方法DoGray可以根据一个常规图片生成它的灰度图。转载 2013-08-29 19:50:27 · 909 阅读 · 0 评论 -
C++11新特性:Lambda函数(匿名函数)
C++11终于知道要在语言中加入匿名函数了。匿名函数在很多时候可以为编码提供便利,这在下文会提到。很多语言中的匿名函数,如C++,都是用Lambda表达式实现的。Lambda表达式又称为lambda函数。我在下文中称之为Lambda函数。为了明白Lambda函数的用处,请务必先搞明白C++中的自动类型推断:http://blog.youkuaiyun.com/srzhz/article/details转载 2013-08-09 17:19:30 · 747 阅读 · 0 评论 -
C++11新特性:自动类型推断和类型获取
自动类型推断当编译器能够在一个变量的声明时候就推断出它的类型,那么你就能够用auto关键字来作为他们的类型:[cpp] view plaincopyauto x = 1; 编译器当然知道x是integer类型的。所以你就不用int了。接触过泛型编程或者API编程的人大概可以猜出自动类型推断是做什么用的了:帮你省去大量冗长转载 2013-08-09 17:18:06 · 711 阅读 · 0 评论 -
如何学好C++,用好类库很重要
<br />如果你有一定的C基础可能学起来比较容易些,但是学习C++的过程中又要尽量避免去使用一些C中的思想;平时还要多看一些高手写的代码,遇到问题多多思考,怎样才能把问题抽象化,以使自己头脑中有类的概念;最后别忘了经常上机自己调调程序,这是谁也代替不了的.<br />C++类库介绍 <br /><br /> 再次体现了C++保持核心语言的效率同时大力发展应用库的发展趋势!!在C++中,库的地位是非常高的。C++之父 Bjarne Stroustrup先生多次表示了设计库来扩充功能要好过设计更多的语法的言论转载 2010-07-25 16:36:00 · 607 阅读 · 0 评论 -
extern
1 基本解释 extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。 另外,extern也可用来进行链接指定。 2 问题:extern 变量 在一个源文件里定义了一个数组:char a[6]; 在另外一个文件里用下列语句进行了声明:extern char *a; 请问,这样可以吗?转载 2010-03-06 11:00:00 · 628 阅读 · 0 评论 -
extern "C"
extern "C" 包含双重含义,从字面上即可得到:首先,被它修饰的目标是“extern”的;其次,被它修饰的目标是“C”的。让我们来详细解读这两重含义。 (1) 被extern "C"限定的函数或变量是extern类型的; extern是C/C++语言中表明函数和全局变量作用范围(可见性)的关键字,该关键字告诉编译器,其声明的函数和变量可以在本模块或其它模块中使用。记住,下列语句:原创 2010-03-06 10:49:00 · 592 阅读 · 0 评论 -
各种窗口关系
1.Pop-up窗口: 一个弹出窗口是必须具有WS_POPUP属性的窗口,弹出窗口只能是一个Top-Level窗口,不能是子窗口,弹出窗口多用于对话框和消 息框,也可以用于应用程序的主窗口, 弹出窗口可以不必具有标题栏2.Overlapped窗口: 一个重叠窗口是一个必须具有WS_OVERLAPPED属性的窗口,也就是一个重叠窗口必须具有边框,标题栏,客户转载 2014-06-08 22:17:17 · 823 阅读 · 0 评论