在子类中对实例成员函数和实例成员属性的重新实现称为重写(override),对静态成员函数和静态成员属性的重新实现则称为重定义(redef)。
Codelearn
分享Python,C/C++相关的技术文章, 海洋饼干叔叔@重庆大学
在子类中对实例成员函数和实例成员属性的重新实现称为重写(override),对静态成员函数和静态成员属性的重新实现则称为重定义(redef)。
与实例属性相较,静态属性是伪装成静态成员变量的静态成员函数。而静态成员函数,由于没有隐含的this形参,只能使用类型的静态成员变量和静态成员函数。
计算机内的数据存储和操作永远是二进制的。称一个占据 8 字节空间的对象为 Int64,仅仅表明我们以 Int64 的形式去理解和操作那 64 个比特位。从电路层面上,储存一个 Int64 的 8 字节空间与存储一个 Float64 的 8 字节空间没有什么不同,都存储着 64 个 0 或者 1。
当我们操作一个整数对象,比如给它赋值时,是把其 64 个比特当成一个整体操作。有时,特别当我们的程序试图直接跟 CPU 之外的电路打交道时,我们期望能够直接操作一个对象的单个比特位。仓颉提供按位与&、按位或|、按位取反!、按与异或^、左移位<<、右移位>>等操作符,使得我们可以对构成整数对象的各个比特进行操作。
普通初始化器函数init()用于初始化新对象。与之对应,静态初始化器函数则用于初始化类型的静态数据成员。
将一个对象转换成对应的字符串对象的过程称之为格式化(format)。在仓颉中,std.convert包为Float32、Float64、Int32、Int64、UInt32、UInt64等类型扩展实现了format成员函数。在导入std.convert包后,再执行这些对象的format成员函数,即可将对象“转换”成对应的字符串表达形式。
而上述format成员函数,包含了一个名为fmt的字符串类型的参数,用于指定转换格式。
鸿蒙初开,关于鸿蒙原生应用开发的资料较少,使用仓颉的资料就更少。我们花费了大约30多页的篇幅,从零开始,详细解释了如何搭建一个拥有两个页面的仓颉鸿蒙应用,并详细解释了代码的工作原理。期望能帮助迷途的羔羊们找到方向。
本页提供《仓颉编程基础及应用》第1版,14.5节index.cj.macrocall文件的全文。
使用仓颉开发鸿蒙应用需要安装DevEco Studio集成开发环境以及与之配套的仓颉语言插件(plugin)。至本文发布时止,DevEco Studio及仓颉插件尚处于内测状态,开发者需要登录华为开发者官网申请内测资格,方能下载安装。
全书习题均已录入拼题A(PTA),高校教师可以在PTA上通过我们的分享码向学生布置编程作业。这些作业的绝大多数都是OJ自动评价的,客观而精准。网站所提供的统计数据可以帮助教师快速了解学情。
全书习题均已录入拼题A。学习编程的唯一方法就是编程! 读者可以自行登录该网站,然后通过我们提供的邀请码练习教材《Python编程基础及应用》第2版上的全部习题。
注意:如果读者是高校在校学生且您的授课教师已经使用拼题A给你布置了本书相关的作业,请忽略本文档并遵教师安排进行编程练习。
拼题A是一个Online Judge系统,对于读者所编写的代码,它会在服务器后台进行模拟运行和测试,以判定读者所编写的代码是否正确。