现在位置: 首页 > 所有2012年发表的文章
2012-09-07 06:06 工业·编程 ⁄ 共 1801字 暂无评论
    网上修改CListCtrl项高度的方法一般是扩大字体,及用图片将项高度撑大.这两种方法虽然简单,但是效果却不是很理想.一种比较理想的方法是自画CListCtrl,不过方法相对来说比较复杂.     要修改CListCtrl的列表项高度,我们需要自己添加 MeasureItem 的消息响应函数,对应的消息是 WM_MEASUREITEM+WM_REFLECT_BASE, 而不是 WM_MEASUREITEM.在CListBox里我们可以直接在 ClassWizard 里将此消息响应添...
阅读全文
    无论是顶层设计还是顶顶层设计,概念提出来了,但如何具体化和细节化呢?没有具体化和细节化,这个概念就没有操作性,就没有可行性。从各国政治制度运作的经验看,顶层设计和顶顶层设计都涉及到两个相关的基本层面,即权力的结构和改革的政策。权力结构决定了改革政策的方方面面,包括能不能产生政策?产生什么样的政策?能不能把已经制定的政策推行下去?     近年来,中国面临“想改革但又...
阅读全文
2012-09-06 23:21 工业·编程 ⁄ 共 2857字 暂无评论
1、为什么要引入友元函数:在实现类之间数据共享时,减少系统开销,提高效率 具体来说:为了使其他类的成员函数直接访问该类的私有变量 即:允许外面的类或函数去访问类的私有变量和保护变量,从而使两个类共享同一函数 优点:能够提高效率,表达简单、清晰 缺点:友元函数破环了封装机制,尽量不使用成员函数,除非不得已的情况下才使用友元函数。 2、什么时候使用友元函数: 1)运算符重载的某些场合需要使用友元。 2)两个...
阅读全文
采用类的机制后实现了数据的隐藏与封装,类的数据成员一般定义为私有成员,成员函数一般定义为公有的,依此提供类与外界间的通信接口。但是,有时需要定义一些函数,这些函数不是类的一部分,但又需要频繁地访问类的数据成员,这时可以将这些函数定义为该函数的友元函数。除了友元函数外,还有友元类,两者统称为友元。友元的作用是提高了程序的运行效率(即减少了类型检查和安全性检查等都需要时间开销),但它破坏了类的封装...
阅读全文
2012-09-06 23:18 工业·编程 ⁄ 共 721字 暂无评论
在说明什么是友元之前,我们先说明一下为什么需要友元与友元的缺点: 通常对于普通函数来说,要访问类的保护成员是不可能的,如果想这么做那么必须把类的成员都生命成为public(共用的),然而这做带来的问题遍是任何外部函数都可以毫无约束的访问它操作它,c++利用 friend修饰符,可以让一些你设定的函数能够对这些保护数据进行操作,避免把类成员全部设置成public,最大限度的保护数据成员的安全。 友元能够使得普通函数直...
阅读全文
我们常常在初始化类数据成员的时候,对使用初始化表和在构造函数中十分困惑,这二者有什么区别呢?我们应该如何选择呢? 先举个简单的例子,看下面的两段代码: 代码A: [cpp] view plaincopyprint? inline Account::Account(const char* name,doubl opening_bal)                        ...
阅读全文
2012-09-06 23:11 工业·编程 ⁄ 共 265字 暂无评论
要说初始化表的重要作用我网上找了下就只找了这两个常用的: (1)如果类存在继承关系,派生类必须在其初始化表里调用基类的构造函数。 (2)类的const常量只能在初始化表里被初始化,因为它不能在函数体内用赋值的方式来初始化。 例: class A {     const int tmp;//A类里的常量     public A(int value):tmp(value)//使用初始化表来初始化常量tmp     {    ...
阅读全文
2012-09-06 23:05 工业·编程 ⁄ 共 989字 暂无评论
     拷贝构造函数,经常被称作X(X&),是一种特殊的构造函数,他由编译器调用来完成一些基于同一类的其他对象的构件及初始化。它的唯一的一个参数(对象的引用)是不可变的(因为是const型的)。这个函数经常用在函数调用期间于用户定义类型的值传递及返回。拷贝构造函数要调用基类的拷贝构造函数和成员函数。如果可以的话,它将用常量方式调用,另外,也可以用非常量方式调用。     在...
阅读全文
拷贝构造函数: 以一个对象的内容去初始化另个对象。 (关键在于初始化) 有三种情况下会调用拷贝构造函数 class x {……}; (1)X x;  X xx=x     //不是赋值操作而是拷贝构造函数 (2)void foo (X x);    // 对象参数 (3)FooBar() { X x; return x;}  // 返回对象 如果类没有提供显示的拷贝构造函数,编译器采用的是位逐次拷贝。也就是把对象数据成员值拷贝到另个对象...
阅读全文
2012-09-06 22:05 工业·编程 ⁄ 共 5623字 评论 1 条
算起来,我用Visual C++也有将近5年的历史了。在这期间,我也曾涉猎过Visual Basic和Delphi,但都是浅尝而止;Visual C++始终是我的主业。可是努力的成果如何呢?我用Delphi作出了十多个有规模的软件,用VB--虽然我用在VB上的时间只有短短的两三个月--也有两个像样的项目;然而,在我付出了最大热情和最多努力的Visual C++上面,却只作出了三个自己看得上眼的软件。 固然,在用Visual C++的时候,MFC帮了我不少的忙。但是...
阅读全文