VS+QT配置

QT:使用VS搭建qt环境 使用 Visual Studio 搭建基于 CMake 的 QT 开发环境可以让开发者更加灵活地控制和管理 QT 项目的构建和配置,从而提高代码的可移植性和可维护性。通过配置 CMakeLists.txt 文件,可以添加 QT 组件库、自定义编译选项、定义编译器路径等,从而更好地控制 QT 项目的构建过程。使用 Visual Studio 搭建 CMake 项目可以让 QT 开发者专注于应用程序开发,从而更加高效地构建、测试和发布 QT 应用程序。 阅读详情

一、简介

  • 简介

Qt 是一个跨平台的C++应用程序框架,支持Windows、Linux、Mac OS X、Android、iOS、Windows Phone、嵌入式系统等。也就是说,Qt 可以同时支持桌面应用程序开发、嵌入式开发和移动开发,覆盖了现有的所有主流平台。你只需要编写一次代码,发布到不同平台前重新编译即可。

Qt 不仅仅是一个GUI库,它除了可以创建漂亮的界面,还有很多其他组件,例如,你不再需要研究STL,不再需要C++的<string>头文件,不再需要去找解析XML、连接数据库、Socket 的各种第三方库,这些 Qt 都已经内置了。

  • QT可以做什么

使用 Qt 开发的程序非常多。1997年,Qt 被用来开发 Linux 桌面环境 KDE,大获成功,使 Qt 成为 Linux 环境下开发 C++ GUI 程序的事实标准。Linux 也是嵌入式的主力军,广泛应用于消费类电子、工业控制、军工电子、电信/网络/通讯、航空航天、汽车电子、医疗设备、仪器仪表等相关行业,这些地方都有 Qt 的影子。

在 Windows 下,GUI 解决方案比较多,基于C++的有 Qt、MFC、WTL、wxWidgets、DirectUI、Htmlayout,基于C#的有 WinForm、WPF,基于Java的有AWT、Swing,基于Pascal的有Delphi,还有国内初露头角的 aardio;如果你有Web开发经验,也可以基于Webkit或Chromium将网页转换为桌面程序。

但是,由于Android本身支持Java,iOS本身支持Objective-C和Swift,所以Qt 在移动端的贡献寥寥无几。

总起来说,Qt 主要用于桌面程序开发和嵌入式开发。

  • QT优点

用 Qt 来开发 Windows 桌面程序有以下优点:

  • 简单易学:Qt 封装的很好,几行代码就可以开发出一个简单的客户端,而 MFC 封装简陋,还需要了解 Windows API,普遍反映难学。

  • 资料丰富:资料丰富能够成倍降低学习成本,否则你只能去看源码,关于 DirectUI、Htmlayout、aardio 的资料就很少。

  • 漂亮的界面:Qt 很容易做出漂亮的界面和炫酷的动画,而 MFC、WTL、wxWidgets 比较麻烦。

  • 独立安装:Qt 程序最终会编译为本地代码,不需要其他库的支撑,而 Java 要安装虚拟机,C#要安装 .NET Framework。

  • 跨平台:如果你的程序需要运行在多个平台下,同时又希望降低开发成本,Qt 几乎是必备的。

  • 现有产品

下面的程序都使用 Qt 开发:WPS、YY语音、Skype、豆瓣电台、虾米音乐、淘宝助理、千牛、暴雪的战网客户端、VirtualBox、Opera、咪咕音乐、Google地图、Adobe Photoshop Album 等。

二、安装

  • 2.安装:

    msvc2017 32bit和msvc2017 64bit都勾选上;

  • vs2019也是对应的msvc2017;

  • 3.配置

    vs2019“扩展”>“Qt VS Tools” > “Qt Options”;

  •  

三、创建项目

  • 链接

(45条消息) Qt5.14.2 VS2019创建Qt项目并使用QSS美化界面(附QSS资源下载)_超级大洋葱的博客-优快云博客

  • 创建项目

  •  

结构:

 

  • 配置

  •  

  • 打开UI文件:

    1.会出现打不开的现象,重新 添加designer.exe即可(已测试)

    2.修改Qt5WebEngineWidgets.dll名字(随便修改,不过我下载的没有)

四、界面美化

VS 运行QT程序,一些配置 解决vs中使用qt遇到的一些基础配置问题。 阅读详情

相关推荐

QT+VS开发界面入门(qt界面在VS2022实现自动生成槽函数)

QT+VS开发入门 无论使用QT Creater单独开发,或者使用VS的MFC单独开发,都能通过转到槽函数/双击插件,进行跳转一个插件的响应函数。 而习惯了使用VS编程,又想使用QT进行界面开发,那就很有必要看一下这篇文章。 关于QT与VS如何联动,请看我的另一篇文章:VS+QT开发环境搭建 创建项目 先上项目列表: ui_QtWidgetsApplication1.h:包含了UI界面内的参数属性。界面布局,插件位置,槽函数的连接函数等。 QtWidgetsApplication1.ui:UI界面,双击打

MelyLenient的博客 3万+

VS中使用Qt开发项目

在VS中开发Qt项目遇到的问题,包括各部分的版本如何选择以及如何相互连接的问题

陈七的博客,学习知识分享,期待与大家的交流 1万+

VS2019配置QT5.14.2

1、下载QT和VS2019 QT下载 建议使用清华的下载源,速度相对比较快https://mirrors.tuna.tsinghua.edu.cn/qt/archive/qt/ QT官方的下载地址:http://download.qt.io/archive/qt/ 北京交通大...

u012670181的博客 2万+

VS+QT快速入门教程

昨天快速入门了一下在VS上开发QT,主要参考的Qt入门教程:1天玩转Qt。本文也算是这个简单教程的摘要。 1. 背景 Qt 不仅仅是一个GUI库,它除了可以创建漂亮的界面,还有很多其他组件,例如,你不再需要研究STL,不再需要C++的头文件,不再需要去找解析XML、连接数据库、Socket 的各种第三方库,这些 Qt 都已经内置了。 独立安装:Qt 程序最终会编译为本地代码,不需要其他库的支撑,而 Java 要安装虚拟机,C#要安装 .NET Framework。 但是,由于Android本身支持Java

Setul 2万+

VS2019安装配置QT插件(qt-vsaddin)

Windows的Qt开发,一般采用Visual Studio安装Qt插件的方法开发Qt程序,毕竟VS开发工具还是比QtCreator开发工具强大、好用的多。本教程采用VS2019安装配置Qt插件(qt-vsaddin-msvc2019-2.6.0.vsix),默认已经安装了VS2019(已安装“MSVC V141-VS 2017 C++ x64/x86 生成…”选项)和Qt5.14(已安装“msvc2017 32-bit”和“msvc2017 64-bit”选项)。

咸鱼爱幻想的博客 3万+

VS2022配置Qt6

VS2022配置QT教程

Life is a struggle ! 6358

在vs2022上配置qt插件教程

点击安装即可。记得留下最开始的安装文件,如果以后有其他的扩展或者修改,都可以使用它。

suren_jun的博客 1万+

QT配置VS

QT配置VS标签(空格分隔): 学习笔记(QT这里就不做介绍了,由于项目需求,考虑用QT做个按键、显示、屏幕抓取等多功能于一身的界面,当然也是用C++实现。关于这一部分,见后续的文档) 本篇文档用于QT配置VS教程;一、环境准备操作系统: Win 7 VS版本: 2013 QT版本:qt-opensource-windows-x86-msvc2013_64-5.5.0 本篇教程使用qt-fo

liu_matthew的博客 1138

VS2019+Qt配置

新手VS2019配置QT采坑记录 1、QT下载 推荐下载Qt5.12.3版本(5.12为LTS长期支持版本),官方下载:http://download.qt.io/archive/qt/ 2、QT安装 下载完成后进行安装,注意一开始提示需要注册qt账号。 此外,需要勾选一些常用的组件: 然后是漫长的等待过程,大约10分钟左右。 3、安装VS2019插件 方法一:在VS2019中配置插件:拓展->管理拓展->联机->搜索Qt,下载并安装。注意安装完成后需要重启VS。(有时会

weixin_41977337的博客 1万+

VS下QT配置

** 记录一下安了一天的QT ** 刚开始不懂,直接在VS里下载的,结果下了一下午毫无进度。详细步骤如下 注:VS是在关闭状态下 [https://download.qt.io/] 在这里面选择一个要使用的Qt版 本 在这里插入图片描述 我选的是5.14.1 5.15的QT商业化了,不再支持离线下载 选择windows 因为QT安装需要账号,如果你不想注册账号,或者是注册账号时一直显示连接错误,下载完成后就可以断网,选择离线安装。 VS2019和VS2017对应MSVC版本都是...

mnb1V9cxz的博客 1851

文本纠错项目代码调试

文本纠错项目调试

m0_67084346的博客 868

VS配置QT

1.所需环境 a.Visual Studio 20xx b.QT环境:网址 c. QT VS插件:网址 2.安装步骤 在VS环境已经安装的情况下安装QT环境。根据自身需要选择不同的QT环境。 Qt4和Qt5差别相对较大,笔者这里安装的是Qt4.8.5,与VS2020搭配使用。 安装时,可以勾选“add path to environment”,把Qt的执行目录加到环境变量中。 笔者的Qt安装目录为E:\Qt\4.8.5 安装好QT之后,安装QT VS插件。 笔者选择的是1.1.10版本,搭配V

t18438605018的博客 1241

Balser相机的硬件触发实战:从连线到信号处理

本文详细介绍了Balser相机硬件触发的实战应用,从硬件接线、信号定义到软件配置(Pylon Viewer及API)提供了完整指南。重点阐述了如何利用外部物理电信号实现微秒级精准触发,解决工业场景下的同步与延迟问题,并分享了信号调理、抗干扰等高级实战经验。

y9z0a1b的博客 336

【项目实践】VS配置Qt

最近因为一个项目,需要使用Qt,本来想使用Python的,但是由于另外一个第三方的库是C++的,所以决定还是使用VS,第一步肯定就是配置环境,以下是操作记录。

记录学习成长之路,进一寸有进一寸的欢喜 3794

MATLAB安装

Matlab 2016a 安装包及破解教程百度云分享链接: 链接:https://pan.baidu.com/s/1i6BgD8p       密码:17gg   Matlab安装教程: 1、下载文件,得到R2016a_win64.part1.rar、R2016a_win64.part2.rar两部分安装文件和Matlab 2016a Win64 Crack破解文件。 2、解压安装文件(解...

qq_36734094的博客 17万+

低轨通信 | 手机直连低轨卫星通信:架构、关键技术与未来展望

手机直连低轨卫星通信正推动人类进入"全域连接"时代。当中国星网GW星座与千帆星座的万颗卫星点亮夜空,当普通智能手机在珠峰之巅仍能流畅视频通话,当远洋渔船通过卫星物联网实现精准捕捞——这些场景不仅重构通信产业格局,更将深刻改变人类生产生活方式。正如工信部《指导意见》所规划,到2030年我国将发展超千万卫星通信用户,催生万亿级新市场[1][5]。在这场太空基建竞赛中,技术创新与标准制定的双重突破,将决定未来数字文明的星空版图。

尘世冰封的专栏 936

VS2010配置QT

一)vs2008中Qt配置。 下载qt-win-opensource-4.7.3-vs2008.exe 和qt-vs-addin-1.1.9.exe,顺利安装,安装路径与vs2008路径无关,安装后,vs2008界面增加了Qt菜单。选择工具->选项->项目和解决方案->VC++目录:                (1)  选择“可执行文件”,在里面添加:C:\Qt4.7.0\bin;

aaqqxx1910的专栏 3736

一个代码循环计算水在石墨烯表面的接触角

石墨烯接触角

Rockyoung 2572

VS2022中Qt环境配置步骤

有博客推荐直接在vs的扩展中-联机,选择Qt tools进行安装,但是我按照这个方法安装时,总是在中途断掉,提示Web有问题。后来我直接从QT官网找了qt-vsaddin,进行下载安装。安装qt-vsaddin_msvc2022。

日志 2487

使用 Simulink 进行电力电子系统的大信号模型仿真

电力电子系统(Power Electronics System)包括各种功率转换器(如 DC-DC 转换器、逆变器等)。这些设备中的关键组件(如 MOSFET、IGBT、电容器、电感器等)不仅影响系统的性能,还直接关系到系统的稳定性、效率和可靠性。因此,在设计阶段进行详细的建模和仿真至关重要。大信号模型仿真的目的是通过模拟系统在非线性条件下的真实行为,评估其瞬态响应、稳态性能以及对不同负载和输入电压变化的响应。通过本教程,我们介绍了如何使用 Simulink 进行电力电子系统的大信号模型仿真。背景介绍。

xiaoheshang_123的博客 303

高通开发系列 - Bootloader之lk匹配dtb和dtbo中msm-id和board-id的知识

lk匹配dtb和dtbo中的msm-id和board-id等知识

fulinux的博客 4244

VS2010 Qt配置

第一步:安装VS2010,我这里安装的是中文版的VS2010 第二步:安装Qt,访问Qt官方网站http://qt-project.org/downloads下载2个软件: 1,下载编译好的QT4.8 VS2010版本:http://download.qt-project.org/official_releases/qt/4.8/4.8.4/qt-win-opensource-4.8.

Tan 1410

深入介绍 SAP OData CSRF Token 的一些技术细节

跨站请求伪造(Cross-Site Request Forgery,简称 CSRF)是一种网络攻击手段,它允许攻击者伪造用户的身份来执行未经授权的操作。为了防止 CSRF 攻击,常用的一种技术手段就是 CSRF Token.CSRF Token 是一种随机生成的防伪 Token,它由服务器颁发给客户端,并需要客户端在提交某些特定类型的请求时,将该 Token 添加到 HTTP 请求的头部字段去。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 642

【VS2019安装+QT配置】

前期安装了qt,发现creator编辑器并不好用,一点都不时髦。在李大师的指导下,听说visual studio2019超级好用。对此开始采用visual studio2019进行编写程序。断点调试,函数调用功能对于开发者来说超级棒!下面来实操vs2019安装+QT配置过程,QT安装参考【Qt安装与简易串口控制Arduino开发板小灯教程】🥳🥳🥳现在,我们在本教程中,您学习了vs2019安装+QT配置教程。

vor234的博客 7459

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

深度学习工具包 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")

qt配置_QT在VS2013中的配置

一 前言只要是略懂编程的人一般都知道,VS2013是一个相当优秀的集成开发环境,而QT5则是一个免费易用的图形库,当然,如果能在VS2013中使用QT5进行图形界面开发,那无疑是一件相当享受的事情。不过,要想在VS2013中集成QT,这对初学编程的朋友来说,绝不是一件简单的事,甚至连许多老手都有点茫然,盲目进行了很多测试,都依然不得要领。那么,怎样才能在VS2013中集成QT5进行图形界面应用程序...

weixin_35992471的博客 1785

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

QT - QT中配置MSVC编译环境 以及 VS中配置QT开发环境_qt msvc

上面的可以说是安装的比较全了,可以根据个人需要进行选择安装。

2401_87555310的博客 2084

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

上一篇: Unity点乘和叉乘的基本使用
下一篇: 用 Notepad++ 编译 C/C++
LearnToStick
博客等级 码龄9年 11粉丝 50原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值