Python中面向对象的一点概念
Python的面向对象和C++颇有一些差异,主要体现在父类和子类的关系、函数重载、虚函数等方面。基本上可以说,在Python的内心,闪烁着C的光芒。
这样说可能太文绉绉了些,看下面这段代码,就能了解到一些基本的概念了:
学海无涯
Python的面向对象和C++颇有一些差异,主要体现在父类和子类的关系、函数重载、虚函数等方面。基本上可以说,在Python的内心,闪烁着C的光芒。
这样说可能太文绉绉了些,看下面这段代码,就能了解到一些基本的概念了:
通常都是用C/C++来扩展Python应用。而在我们程序中是反过来的,核心是C/C++程序,嵌入Python来提供扩展脚本,满足业务开发的需要。
这种模式下,很难应用现有的一些IDE工具来查错和调试。通常我们总是通过输出打印信息来检查python脚本逻辑是否出错。但是对一些语法错误,由于没有IDE工具辅助,反而不易排查,经常阻碍开发进度。后来发现可以应用traceback模块来迅速定位出错的地方,这可真是个很不错的模块。具体实现如下:
def TraceError(self):
exc_type, exc_value, exc_traceback = sys.exc_info()
exc_list = traceback.format_exception(exc_type, exc_value,exc_traceback)
exc_len = len(exc_list)
index = 0
从cnBeta网站看到一条信息(http://www.cnbeta.com/articles/116220.htm),大致的意思是:
让HSPA网络也可以承载语音数据,并且还可以在无SIM卡的情况下实现紧急呼叫。这意味着只要有HSPA数据连接,用户就可以直接通过数据网络拨打电话而不是走传统的蜂窝网。新的标准还优化了语音路由,并加入了一系列LTE手机的服务端API。
我比较感兴趣的是:
Linux下的vim是个不错的编辑软件,不过在Fedora和ubuntu环境下,缺省配置不太如意。我们需要修改它的缺省配置文件,进行一些简单的定制. 以下操作是基于Fedora系统。
我们需要以root身份,修改/etc/vimrc文件(如果是ubuntu,则应当修改/etc/vim/vimrc文件),这个文件对系统所有用户的vim配置起作用。如果只是想修改当前用户的vim配置,可以在当前用户的home目录下,创建.vimrc文件进行配置。
“显示行号
set nu
“语法高亮显示
syntax on
“格式自动对齐
set autoindent
“按tab后退四格
set ts=4
set shiftwidth=4
“扩展tab为空格键
set expandtab
这个设置很让人意外。在菜单“工具-〉保护”中提供了对工作表和工作簿的保护,可是从使用过程看,似乎没有起到什么保护作用。
实际上是通过另外的方法来设置密码保护:保存文档时,在对话框中选择“密码保护”,然后输入密码即可。
对比Microsoft Office,感觉OpenOffice在各方面还有待加强啊。例如,上述密码保护,没有区分只读和可写等情况(也可能是我不熟悉,没找到正确的地方?)。在保存对话框中进行密码设置也比较另类,如果客户直接通过工具条上的“保存”按钮,就不会知道这些设置。
Windows下应用SIPp非常简单, 直接下载SIPp的安装文件安装即可。
需要注意的是,不要直接从cmd窗口启动SIPp,而是 点击SIPp的快捷方式“start sipp”,这样,它会将SIPp的安装目录加入路径中。或者,可以将sipp的安装目录加入系统的PATH路径,然后也可以直接在cmd窗口启动 SIPp。
sipp 192.168.1.100:5060 -sf caller_basic.xml -p 5062 -m 1 -r 1 -rp 2000 -d 2000
-sf 加载外部的xml定义文件
-inf 从外部csv文件导入数据信息
-p 指定本地端口。 如果不指定的话,系统使用一个随机的空闲端口;
-m 呼叫次数
-d 每个呼叫的保持时间(毫秒)
其他常用配置参数:
-r -rp Specify the rate period for the call rate.
Example: -r 7 -rp 2000 ==> 7 calls every 2 seconds.
实际上SIPp内置了缺省的UAS和UAC,因此,我们可以不需要定制xml脚本,直接用下面的命令进行测试:
启动SIPp做呼出:sipp 192.168.1.100:5060 -sn uac -p 5062 -r 1 -rp 2000 -d 2000
启动SIPp接受呼叫:sipp 192.168.1.100:5060 -sn uas -p 5063
应用在Fedora系统
下载sipp的源代码在Fedora 9下编译时,会有编译错误“INT_MAX未定义”。 解决方法:
修改sipp.hpp文件,增加以下宏定义即可:
#ifndef INT_MAX
#define INT_MAX 0xFFFFFFFF
#endif
直接使用命令make即可进行编译,在当前目录下产生sipp可执行文件。