我的 C++ 学习历程 之二 我学C之前已经知道的东西

也不知道是谁把class翻译成“类”的?

 

要我说,这个class应该译成:老子。

 

不是古代的那个老子,而是现在父亲有时的自称,还有你发威时有时也这知称呼自己。

 

我也有看C++的书,我的书桌上一直放着四五本C++入门类的书,可是好几年了,我没有把哪怕哪一本读到一半。而且只有我在停电时我才去看看它们。

 

这里面自然也有计什么类啦 派生类啦啥的。可是我看过就忘。原因这名词与我们生活没有任何关系,而与生活没有关系的名词,我们人类都称它叫做:抽象。

 

抽象的东西在大脑里不容易保存,这就如我们在学生时代学过的东西一样,当你踏出校门走入社会开始,那些抽象的名词会一一从你脑海中淡忘,直到五六年后,你会时常怀疑自己真的上过大学?而不是只到中学毕业?

 

气压还记得吗?这与生活息息相关,你应该记得,常压是一个大气压,知道气压的单位叫帕。可是一个气压是几帕?它是怎么计算出来的?你还记得吗?不记得了吧……

 

相似的情况有很多很多,如果你不是一直从事于计算数数值的职业,你在走出校门十年后恐怕只会人民币的加减乘除了,多原始的计算公式啊,连小学生都会!说句让你脸红的,现在的中学生能拿题难死你。即便是教师,教英文的不会数学计算,教数学的看不懂英文,这是实情。

 

不费话了。来说说c++

 

忽然的想法,让我把C++里的类理解成了祖先,它们可以是你的老子,你的爷爷,甚至是曾祖,因为你就是你曾祖的血脉。

 

你爷爷具有你的曾祖的特征,而你父亲又具有你爷爷的特征,而你又具有你老子的某些特征。在c++里的表达用冒号来表示关系,如下:

 

你:父亲:爷爷:曾祖

 

最新的一代排在最前面,越往后的越早。。。。。嘎。当然了实际上的真正的 c++表达方式并不是这样。

 

接触这本24小时QT开始的第一课,因为QT是把界面设计与代码分开来的,所以,这本书是相对于较早期的版本的,不过没有关系。因为QT本来就是编程与界面设计分开来的活计。

 

书上的第一课开始,都是通过代码来生成窗口,生成控件,并控制控件的外观与属性,比如控件的名称,窗口的标题,窗口的位置,大小,控件的位置,大小等。

 

课程里的#include <qwidget.h>头文件可以用来生成一个窗口。你可以把这个头文件当成一个老子集合,里面包括老子,爷爷,祖父,曾祖,老祖等,而你派生而成的窗口就是它这血肪所繁衍出来的某一后代。

 

当包含了这个老子后,在代码区就可以通过简称来引用这个头文件里的某个老子,比如:

 

QWidget a;

 

 这条命令定义了一个名称为a的窗口,也就是从祖先集合里生一个后代出来。

 

然后你可以给这个后代定义一些属性,比如给它取名字,穿衣服,设置体型,定义性别啥的。。。

 

以下是我的第一个C++程序,在这里我把Qt理解为:linux下的C++,以后的日记也将如此,因为在win系统里如果装好QT的支持库sdk,那下面的代码完全可以在 VC++上执行。

 

#include <qapplication.h>
#include <qwidget.h>
#include <qpushbutton.h>

int main(int arga,char **argv)
{
    QApplication a(arga,argv);
    QWidget mainwindow;
    mainwindow.setMinimumSize(200,100);
    mainwindow.setMaximumSize(400,200);
    mainwindow.setWindowTitle("Hello");

    QPushButton btn("Hello World",&mainwindow);
    btn.setGeometry (10,10,100,30);

    a.setActiveWindow(&mainwindow);
    mainwindow.show();
    return a.exec();

 

}

 

这里的:qpushbutton.h  是所有按钮的老子,所有的按钮都是通过它来产生的。

QT里的main函数有两个参数,用来传递给QApplication老子 所定义的唯一的app儿子,这个儿子只能唯一,所以是独生的。

 

QWidget mainwindow;

这句是窗口祖先生一个叫mainwindow的后代,

   mainwindow.setMinimumSize(200,100);  这句是定义这个窗口的最小尺寸  200为宽度,100为高度,单位为像素
    mainwindow.setMaximumSize(400,200); 这个是定义这个窗口的最大尺寸 400为宽度,200为高度,单位为像素

因为最小尺寸与最大尺寸并不相等,所以这个窗口是有最大化按钮的。

mainwindow.setWindowTitle("Hello");  这句是给这儿子取个名字,名字叫哈罗

 

QPushButton btn("Hello World",&mainwindow);

 

这句就是从让按钮老祖生个名字叫做“btn”的后代,匪号叫:“Hello World”,取并让这后代加入mainwidow帮派,让mainwindow统冶它。

 btn.setGeometry (10,10,100,30);

 

这句是给btn分配地盘。从帮派的坐标:10,10 开始,到100,30的地区都归它管。

 

 

 

a.setActiveWindow(&mainwindow);

 

这个a呢,其实就是QApplication创键的系统进程号,可以当作QApplication只是一个省的老大,而Linux则是咱中国地区的老大,

第一句:

QApplication a(arga,argv);

这句是打电话给中央的老大,本省要开始生产人口了,中央老大同意后,给了两个指示文件(arga,argv)让QApplication照规章计划办事。

 

a.setActiveWindow(&mainwindow);这然才是正式的激法计划,让mainwindow当省代理人

 

mainwindow.show();

这解码器开始,mainwindow开始分配各小弟的地盘,然后省计划开始运作,

 

return a.exec();

这句开始:小弟们手机开机,接收老大的电话信息派遗。

 

好,这篇日记离上篇生成时间不长。。。。

 

嘿嘿,今天这说法让我想起了前些日子看到的一篇黑社会版的《出师表》,大家有兴趣也可以找看看。

 

 

 

 

2006-06-26  菜头 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值