黑马程序员——iOS开发须知

黑马程序员2022年最新软件测试学习路线 软件测试基础入门 黑马程序员最新软件测试视频教程,软件测试基础入门到项目实战(涵盖软件测试基础+黑马头条项目实战) Linux系统2天快速入门Linux系统操作教程2天快速入门linux项目搭建 MySQL数据库软件测试工程师必备MySQL数据库,mysql系统精讲+课后练习 Python自动测试教程 黑马程序员Python自动测试教程,python从基础到UnitTest框架管理测试用例自动化测试 Web自动化软件测试web自动化测试,Web自动化流程精讲和移动自动化测试环境 Appium框架视频 .. 阅读详情

------- android培训、java培训、iOS培训、.Net培训、期待与您交流! ----------

以下是学习iOS开发之前应了解的相关信息:

1、iOS系统是运行在苹果移动设备上的操作系统,是不开源的!
2、iOS系统下安装xcode才可以进行iOS开发。
3、安装xcode需要在苹果商店里面下载,需要注册苹果账号。可以使用QQ邮箱方便记忆。
4、开发苹果系统的应用软件需要有良好的硬件设备,mac book pro ,iPhone4s以上的设备。
5、iOS系统是基于Unix下开发的操作系统,底层语言是C语言。
6、使用xcode开发软件时可以选择使用自己喜欢的语言,C、C++、OC、swift。四种可以选择。其中OC使用较多,swift是2014年5月发布的一种新的苹果开发语言。
7、我们以后主要OC作为编程语言,后期会扩展学习Swift语言,需要从底层的C语言学起。
8、C语言是面向过程的高级语言,OC是面向对象的编程语言,Swift语言类似于脚本语言,易于学习,但是功能强大,绝非脚本语言能比。


了解了以上知识就可以开始学习iOS开发了,以下是开发过程中提升效率的快捷键。

一、关于运行调试

1、运行,停止,都在工具栏的Product里。

Command(后面简化为CMD) + b 编译
CMD + r 运行
CMD + . 停止
CMD + \ 设置或者取消断点
CMD + option(后面简化为OPT) + \ 允许或者禁用当前断点
CMD + OPT + b 查看全部断点
CMD + y 编译并调试(触发断点)
CMD + SHIFT + k 清理
ESC 显示或关闭自动提示列表

二、导航

1、切换头文件和m.文件,很实用

CMD + control(后面简化为Ctrl) + 上下箭头键

2、go back,回退,就是回到你上次打开的页面。
Ctrl + CMD + 左箭头
go forward,回到你前面打开的页面
Ctrl + CMD + 右箭头

三、文件File

CMD + shift + n 新建项目 
CMD + n 新建文件 
CMD + Ctrl + n 新建空文件 
CMD + o 打开
CMD + w 关闭窗口 
CMD + OPT + s 保存所有文件 
CMD + u 还原到保存时状态 

四、编辑代码(代码缩进)

CMD + [ 左缩进 
CMD + ] 右缩进 
CMD + OPT + LEFT 折叠
CMD + OPT + RIGHT 取消折叠
CMD + OPT + TOP 折叠全部函数
CMD + OPT + BOTTOM 取消全部折叠函数

【LDLTS解析】从重叠峰到精准参数:拉普拉斯深能级瞬态光谱如何重塑半导体缺陷分析 本文深入解析了拉普拉斯深能级瞬态光谱(LDLTS)技术如何革新半导体缺陷分析。针对传统DLTS难以分辨重叠峰的痛点,LDLTS通过拉普拉斯逆变换对高精度电容瞬态曲线进行数学解卷积,成功分离发射率相近的缺陷信号,实现从模糊宽峰到精准独立峰的转变。该技术不仅大幅提升了缺陷激活能和捕获截面等关键参数的提取精度,更推动分析范式从经验拟合转向第一性原理,为先进半导体工艺开发与良率提升提供了强大的精准诊断工具。 阅读详情

相关推荐

QMT实盘交易入门:5分钟搞定ETF全球配置策略(附完整代码)

本文详细介绍了如何使用QMT平台实现ETF全球配置策略,从环境准备到策略编写、实盘部署全流程仅需5分钟。通过xtquant库对接交易所接口,提供完整的动量轮动策略代码,帮助投资者快速掌握自动交易技术,优化全球资产配置。

weixin_30675247的博客 335

IOS开发【Swift编程语言】

学习笔记

qq_44799103的博客 3302

避开这些坑!Kaggle数据集下载常见问题及解决方案(含Header Editor插件配置)

本文针对Kaggle数据集下载过程中的常见难题,提供了系统性的解决方案。重点解决了验证码无法显示、API安装失败、密钥文件配置错误及下载命令执行问题,并详细介绍了使用Header Editor插件配置请求头以绕过验证码障碍的实战方法,帮助用户高效获取数据。

weixin_29043895的博客 302

黑马程序员-IOS开发基础班之Objective-C第一天学习笔记

和C语言函数的定义和调用一摸一样。

Ls_attack的博客 1494

Klipper-源码模块

Klippy上位机程序采用多线程架构,包含四个主要进程:主线程处理G代码命令、串口IO线程(C语言实现)、MCU响应处理线程(Python实现)和独立日志线程。代码结构分为三大模块:chelper(C语言辅助函数)、extras(扩展功能如温度控制)和kinematics(运动学模型实现)。核心功能模块包括串口通信(serialhdl.py)、步进电机控制(stepper.py)、运动学计算等,其中C语言实现的底层模块通过serialqueue.c处理高效IO。扩展模块支持热床、传感器等外设,运动学子模块提

weixin_44258581的博客 992

FPGA数字信号处理中定点数的舍入与饱和硬件实现详解

在数字信号处理(DSP)的硬件实现中,定点数运算是核心基础。由于硬件资源(如FPGA的DSP Slice)的位宽有限,连续的乘加运算会导致数据位宽膨胀,严重影响时序和资源利用率。为解决此问题,必须引入舍入(Rounding)和饱和(Saturation)机制。舍入通过对低位进行四舍五入,在可控的精度损失下缩减位宽;饱和则作为动态范围的守护者,防止数据溢出导致信号环绕失真,确保系统行为确定。这两种技术是算法在有限精度硬件上正确、高效运行的关键,广泛应用于滤波器、FFT等DSP模块以及通信、音频处理等场景。本文

weixin_30954817的博客 248

黑马程序员—(iOS开发)iOS了解---(七)

------- android培训、iOS培训、Java培训、.NET培训期待与您交流! ----------   ------- android培训、iOS培训、Java培训、.NET培训期待与您交流! ----------

萌宝宝的专栏 571

ANSYS Maxwell:从RMxprt到3D轴向磁通电机的无缝建模指南

本文详细介绍了如何利用ANSYS RMxprt作为高效起点,快速构建3D轴向磁通电机的有限元分析模型。通过RMxprt内置模板输入关键参数并完成磁路法计算后,可一键生成包含几何、材料、绕组及边界条件的即用型Maxwell 3D模型,极大简化了复杂三维结构的建模流程,使工程师能专注于性能优化与仿真分析。

weixin_29281941的博客 556

黑马程序员——iOS核心基础(17-18天)-黑马程序员-专题视频课程

C语言基础17-18天。其中包括OC类和对象创建、类方法和Xcode

heima_cxy的博客 292

VulnHub系列之BadStore_123渗透测试

BADSTORE: 1.2.3 早期网商系统漏洞鉴赏(2004)

Flynn的博客 1630

10、业务任务(service task)

业务任务通常是用来调用业务系统,camunda中可以调用JAVA代码或者rest api调用。 在camunda中,业务任务实现方式有5种,本节先用一个小例子显示前三种,External 外部任务,Connector连接器后面分别讲解。假设用户预约电器公司上门维修家电,然后师傅上门维修,完成后公司回访客户对师傅服务打分,师傅查询自己的评分。使用java class 模式实现业务任务。 com.forestlake.camunda.servicetask.ReserveRepair 使用Delegate ex

leyoliu的博客 3232

黑马程序员 GUI

dg

h 719

2018安徽省青少年信息学奥林匹克(AHOI)初中组

12 种合法的排列分别为:1, 3, 2, 4, 2, 3, 1, 4, 3, 1, 4, 2, 3, 2, 4, 1, 1, 3, 4, 2, 2, 3,4,1,1,4,2,3, 2,4,1,3, 4,1,3,2, 4,2,3,1, 1,4,3,2, 2,4,3,1。分为 2 组,一组的队员实力值是{4, 5, 2, 3},一组是{-4, -3, -5},其中最小的组人数为 3,可以发现没有比 3 更优的分法了。[0, 1, 1, 2]同样不是合法的分组方案,因为出现了两个实力值为 1 的选手。

weixin_42358969的博客 1143

黑马程序员——iOS开发入门

————————Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ———————— 我们要学习iOS开发,首先要对iOS操作系统和对应的开发环境做一个深入地了解。 iOS操作系统是苹果公司开发的移动操作系统。作为一个智能手机用户,一定对苹果公司和苹果手机一点都不陌生。所以这里就不再赘述。 下面我们就了解一下,做iOS开发的开发环境。 (一)iOS开发的

编程之路 529

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

黑马程序员(自学IOS视频后的感受)

------http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------       今天总算看完IOS基础视频了,从同学建议我去培训IOS之后,我就在传智播客官网上下载了IOS视频,从当初只知道有苹果这么个名词到现在也已经知道苹果了以及和苹果相关的一些知识,也增长了我一些苹果知识的了

ixx__123的专栏 1250

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

黑马程序员——iOS核心基础(13-14天)-黑马程序员-专题视频课程

C语言基础13-14天。其中包括预处理与结构体。

heima_cxy的博客 247

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

黑马程序员——iOS核心基础(15-16天)-黑马程序员-专题视频课程

C语言基础15-16天。其中包括通讯录项目实战。

heima_cxy的博客 317

黑马程序员——快速进入iOS开发

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 本篇文章是写给想学习iOS开发的小白们 首先iOS的开发语言 c和 objective-c(其他不在这说) 教程如下:http://www.itheima.com/main/iosvideo.shtml开发环境Xcode软件 因为没有windows的版本,所以只能用苹果系统 Ma

dimost的专栏 889

黑马程序员释放了洪荒之力!iOS课程全套视频大公开!

从年初开始,整个互联网行业中就一直存在着两种声音--“互联网寒冬”及“iOS初级开发者的暴增”,而黑马程序员似乎并未受到其太大影响,依旧保持着一直以来所具备的优秀传统,努力研发全新的课程。一方面紧跟苹果公司对iOS开发方面的升级,而研发最新技术课程,另一方面根据中国的iOS开发市场的需求,积极地做着调整。 从6月份的项目驱动课程升级,到iOS10等先进学习资源的发布,从4.1课程的优

黑马程序员官方博客 4207

黑马程序员-记我毕业一年的感受

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 2014年6月我从郑州大学,软件工程专业毕业,从此踏入社会,走进社会我才知道生活的不易,赚钱的艰辛。  大学期间没事就喜欢写写代码,到图书馆看看书,喜欢科技方面的书籍和新闻,比如新手机,新电脑等等,因此有一定的编程基础,在大学下学期我看是找工作,一周时间 找到一份码农的工作,那时候干的是J

lanbingziyin的专栏 3484

关于我在黑马程序员培训毕业后的亲身体验

首先申明:我本人已经于2016年5月份在广州传智播客java培训完毕业,和黑马程序员官网没有任何的利益往来,也没有人出钱给我帮他们做软文推广,这是我在黑马程序员的亲身体验,不存在虚构。

一个热爱英语学习的五渣程序员! 7万+

黑马程序员——Objective-C IOS开发模板——黑马 ios 技术博客

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 1、每篇日记标题前必须加上“黑马程序员”。 2、请将以下代码复制到每篇日记开始处。 ------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 复制代码

黑马程序员杜梦秋的技术博客专栏 559

黑马程序员iOS高端培训:培养市场所需的iOS人才

随着九月份的到来,苹果发布会日益临近,很多粉丝翘首以盼等待着苹果新品的发布。苹果手机在中国的认可度依旧排行首位:地铁里放眼望去,每人一部苹果已是常态;每年的苹果发布会都会引来媒体铺天盖地的报道;“卖肾买苹果”已是人们习以为常的笑料。     在当前国内智能手机市场竞争激烈的背景下,苹果手机的销售额在国内长期占据有利市场,这充分体现了国人对iPhone的热情和执着,究其本源是苹果iOS

黑马程序员官方博客 639

一张帖搞定同学们入学黑马前所有难题

前言:黑马程序员——上海校区,5月18日正式进驻上海,致力于打造华东最尖端的IT培训基地,解决目前华东IT人才紧缺矛盾。坚守黑马程序员“0元入学,10000元就业后,再给学费!”的郑重承诺,为同学们提供最优质的IT教育服务。为了进一步快速解决我们的同学们入学上海黑马前的各种疑问,特立此贴!也欢迎同学们踊跃回复提问,你的问题将有可能被收录入本帖中,并获得相应的黑马币奖励。同学们也可以通过点击在线咨询

yumei9的专栏 4317

黑马程序员:iOS开发行业为何“大不如前”

近期,社会上对iOS开发行业的负面信息越来越多,并且还被一些黑骗机构的胡诌八扯越描越黑,黑马程序员想说:现在iOS开发按照开发者与公司招聘的数量上来看,是显示的供大于求,但是从各公司的招人计划上来看,明显是供不应求,那这是什么原因呢?因为,企业真正需求的是iOS中高级开发人才,而不是那些初级开发者,更甚者是那些连简单的界面搭建和业务逻辑都搞不定的小白们。那么是否iOS开发真的有很多人说的那么不景气

黑马程序员官方博客 2836
下一篇: 黑马程序员——C语言笔记之数据类型与常量
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值