C++中的函数多态性应用&虚函数的灵活应用实例源码介绍



C++中的函数多态性应用&虚函数的灵活应用实例源码介绍。

多态性与虚函数
一、多态性

派生类对象可以替代基类对象为基类的引用初始化或赋值。

函数的多态性其实就是对函数不同形式的声明的一种灵活应用。比如说,我们同名不同参数的函数就是对函数的一种多态性表现;同名同参就是函数的覆盖;如果我们用不同类型的参数和个数来声明不同或相同的函数,那么程序会根据我们调用实参的个数和类型进行匹配调用之前声明的函数模型,进行运算求值。

 

二、虚函数

在类的继承层次结构中,在不同的层次中可以出现同名同参(类型、个数)都相同的函数。在子类中调用父类的成员方法,可[......]

Read more

什么是C++中的静态关联与动态关联



什么是C++中的静态关联与动态关联?

一、关联:去顶调用的具体对象的过程称为关联,就是把一个函数名与一个类对象捆绑在一起,建立一个关联。一般来说,关联指把一个标识符和一个存储地址联系起来。

二、认知:

函数重载和通过对象名调用的虚函数,在编译时即可确定其调用的虚函数属于哪一个类,其过程称为静态关联,由于是在运行前进行关联的,所以又称为早期关联,函数重载属静态关联。

虚函数就是通过基类指针与虚函数的结合来实现多态性的。先定义一个指向基类的指针变量指向对应类的对象,再通过基类指针去调用虚函数。这样的调用方式编译系统在编译时是不能确定调用了哪一个类对象的虚函数的,因为编译只做[......]

Read more

什么情况下应当声明虚函数?纯虚函数声明的时候

什么情况下应当声明虚函数?纯虚函数声明。只能用virtual声明类的成员函数,使之成为虚函数,不能将类外的普通函数声明为虚函数。因为虚函数的作用是允许在派生类中对基类的虚函数重新定义。所以只能用于类的继承层次结构中。

一个成员函数被声明为虚函数后,在同一类族中的类就不能再定义一个非virtual的但与该虚函数具有相同的参数(包括个数和类型)和函数返回值类型的同名函数。

根据什么考虑是否把一个成员函数声明为虚函数?

首先看成员函数所在的类是否会作为基类。然后看成员函数在类的继承后有无可能被更改功能,如果希望更改其功能的,一般应该将它声明为虚函数。

如果成员函数在类被继承后[......]

Read more

Objective-C函数重载方法

Objective-C函数重载方法实例源码介绍。

1、 重载定义:派生类继承父类方法时,该方法具有相同的返回类型,并且参数的数目与重载的方法相同,即对父类同名函数进行重写。
2、好处:可以利用重载来修改继承方法的定义。
实例:
[plain] view plaincopy
#import <Foundation/Foundation.h>

@interface declaration : NSObject

{
int x;
}

-(void) initVar;
@end

[plain] view plaincopy
@implement[......]

Read more

ios视图控制器与标签传递nib的输出口outlet

ios视图控制器与标签传递nib的输出口outlet。视图控制器与标签传递nib的输出口outlet在Xcode 4.3.2中,我们使用interface Builder创建一个视图界面,我们选择的是IOS中的Application的single ViewApplication视图,此模版会帮我们自动构建好需要的文件。包含两个类:AppDelegate和ViewController和xib文件即图形界面设计。

ViewController文件是继承的UIViewController基类,UIViewController是ViewController的父类,是一个通用控制器,也是UIKit[......]

Read more

Xcode 4.3.2中Interface Builder检查器的属性解析

Xcode 4.3.2中Interface Builder检查器的属性解析。双击xib文件主窗口打开View界面的设计布局,也就是使用Interface Builder来通过拖动空间来设计图形界面。

首先我们需要在空白界面中添加一个ImageView控件,用来添加一张图片。然后我们选中图片,在右侧Hide or show the Utilities状态栏中,我们看到ImageView控件的相关属性,由于控件属性一致,所以你也可以拖动Label or Buttom控件来查看相关属性。

 

如上图所示,

Image下拉菜单是用来选择当前目录下的图片文件

图片[......]

Read more

iPhoneUIText Field组件的文本字段字号大小属性介绍

iPhoneUIText Field组件的文本字段属性介绍。文本字段Text Field是iPhone上最复杂和最常用的空间之一。在检查器中最顶部的区域。如下介绍各个属性。

Text:可以将其设置为默认值,键入的任何内容都将在应用程序启动时在该字段中显示。

Placeholder:用于指定将在文本字段中以灰色现实的文本,但前提是该字段没有值。如果空间不足的话,可以使用占位符来代替标签,或者使用它告诉用户应在此字段中键入的值。对于此字段,可以键入type in a name作为占位符。

Background和disabled字段是用来设置定制文本字段的外观时使用,多数情况下,完[......]

Read more

iPhone UI设计注册页面的实现及TextField关闭键盘的两种方法实例源码

iPhone UI设计注册页面的实现及TextField关闭键盘的两种方法实例源码。  在Xcode4.3.2中,我们新建一个IOS CocoaTouch项目,命名为:register。在ViewController.h文件中定义四个输出口:user,pass,year,sex;

Label因为不需要获取数据所以可以不定义输出口,定义两个Button按钮:Cancal,ok;

在ViewController.h中定义如下:

 

[plain] view plaincopy

  1. //
  2. //  ViewController.h
  3. //  [......]

Read more

UIButton中的UIActionSheet操作表参数实例源码解析

UIButton中的UIActionSheet操作表参数实例源码解析。在ViewController.xib文件中添加一个UIButton按钮,然后我们实现一个提示功能窗口:

相关方法实现代码如下:

 

  1. -(IBAction)doSomething:(id)sender
  2. {
  3.     UIActionSheet *actionSheet =[[UIActionSheet alloc]initWithTitle:@”Are you sure?” delegate:self cancelButtonTitle:@”No Way” destructiveBut[......]

Read more

UITextField的圆角和常用样式实现介绍

UITextField的圆角和常用样式实现介绍。先说下最近遇到的一些小问题, 首先这些小问题是不影响应用的, 只是在视觉上有点小不爽

1. UITextField四周的圆角
textField.layer.cornerRadius = 5.0 需要导入框架QuartzCore.framework, 并且在当前类中引用#import<QuartzCore/QuartzCore.h>
2. 光标过于靠前
有时候, 当点击输入框时, 你会发现光标就快挨着左边框了, 很不明显, 这是个很小的用户体验, 解决也很容易, 设置一下UITextField的边框样式
textFiel[......]

Read more