- CloudCompare中不同点云数据结构之间的继承关系
点云SLAM
点云数据处理技术数据结构CloudCompare点云数据处理点云继承c++
在CloudCompare(CC)中,点云数据的组织方式是基于继承关系和层次化树结构的。不同的点云数据结构继承自ccHObject,并在此基础上扩展功能。以下是详细的继承关系和它们之间的作用。1.主要的点云数据类层次结构CloudCompare主要有以下几个与点云相关的类:ccHObject├──ccGenericPointCloud//通用点云类(抽象基类)├──ccPointCloud//主要
- 对比两个文本及文件差别的软件及步骤
这个懒人
使用BCompare软件对比两件文件内容首先打开软件BCompare软件选择对应的文件或文本对比若选择文本对比,则如下如选择差别,则会显示对应两个文本不同的地方,由于对比的仅是内容的差别,所以需要注意有时候若两个文件内部两个文件内容中会存在时间的差别,也会显示出来,需要注意。软件地址:https://pan.baidu.com/s/1DTVljnyMO-en_9wK7maQ3gs提取码:zu2f
- access读取EXCEL文件,并根据动态生成表,完成报表的导入
MES先生
ACCESSVBAaccess
OptionCompareDatabasePublicsheetidAsString'报表IDPublictempAsString'获取年月时分秒PublictmpIAsInteger'对应EXCEL行PublictmpJAsInteger'对应EXCEL列PublicXlsAppAsObjectPublicXlsWorkbookAsObjectPublicXlsWorkSheetAsObject
- Java-校验值区间值的连续性
江节胜-胜行全栈AI
java状态模式开发语言
最新版本更新https://code.jiangjiesheng.cn/article/363?from=csdnc<30,30≤c<60,60≤c<100,100≤c有值时,必须收尾相等。BigDecimalendCheckValue=null;for(BssCompareMethodParameterConfigAddVOconfigRow:actualSampleCompareList){e
- 原子操作在高竞争环境下会有哪些性能问题?
原子操作
在高竞争环境下,原子操作可能会面临一些性能问题,这些问题主要源于其工作原理和硬件实现的特性。以下是原子操作在高竞争环境下的主要性能问题及其原因:自旋等待(Busy-Waiting)原子操作通常通过CAS(Compare-And-Swap)机制实现。在高竞争环境下,多个线程可能同时尝试对同一个变量进行CAS操作。如果一个线程的CAS操作失败,它通常会进入一个循环,不断重试,直到操作成功。这种“自旋等
- python静态方法_Python静态方法
cunchi4221
pythonjava深度学习设计模式javascriptViewUI
python静态方法Python静态方法(Pythonstaticmethod)Inthisquickpost,wewilllearnhowtocreateanduseaPythonstaticmethod.Wewillalsohavealookatwhatadvantagesanddisadvantagesstaticmethodsofferascomparedtotheinstancemeth
- 【OpenCV C++】如何快速 高效的计算出图像中大于值的像素个数? 遍历比较吗? No,效率太低!那么如何更高效?
R-G-B
OpenCVC++opencvc++计算机视觉
文章目录1问题2分析3代码实现(两种方法实现)方法1:使用cv::compare方法2:使用cv::threshold3.2compare和threshold看起来都有二值化效果?那么二者效率?4compare函数解释4.1参数解释4.2底层行为规则4.3应用示例4.4典型应用场景1问题一幅图像的目标区域ROI尺寸为60*35的灰度图,快速计算出大于backVal的像素个数,其中backVal=2
- String类的常用方法
迈克尔龙
javaSEjava开发语言
StringStringstr=newString();//创建一个Null字符串对象;Stringstr=newString(“abc”);//创建一个为abc的字符串对象。API(注意:此字符串为调用API者)charcharAt(intindex);intcompareTo(Objecto);Stringconcat(Stringstr);将一个字符串连接到此字符串的末尾;booleaneq
- 力扣-哈希表-844 比较含退格的字符串
夏末秋也凉
力扣#哈希表leetcode散列表数据结构
思路和时间复杂度思路:利用栈完成出栈操作时间复杂度:代码classSolution{public:boolbackspaceCompare(strings,stringt){stackss;stacktt;for(inti=0;i
- android 时间的格式化问题
Shawn_LX
android中经常遇到要格式化时间,下面记录一下"yyyy-MM-dd”类型和”kk:mm:ss”类型的时间格式化方法:“staticSimpleDateFormatdateFormat=newSimpleDateFormat("yyyy-MM-dd");//只取年--月--日publicstaticintdiffDays(StringcompareTime){Calendarnow=Calen
- STM32定时器、PWM周期、频率、占空比的计算
你也喜欢吃香菜嘛
stm32嵌入式硬件单片机
频率和周期:PWM的频率=时钟频率/(自动重装值+1)*(预分频值+1)STM32的最大时钟频率为72MHz=72000000Hz例PWM频率=72000000/(100-1+1)*(720-1+1)=1000Hz周期=1/f=1/1000=1ms占空比:占空比=CCR/(ARR+1)当Compare=50时,改PWM的占空比为50/(100-1+1)=50%
- 【贪心算法】将数组和减半的最小操作数
I_Am_Me_
贪心算法贪心算法算法
1.题目解析2208.将数组和减半的最少操作次数-力扣(LeetCode)2.讲解算法原理使用当前数组中最大的数将它减半,,直到数组和减小到一半为止,从而快速达到目的重点是找到最大数,可以采用大根堆快速达到目的3.代码classSolution{publicinthalveArray(int[]nums){PriorityQueueheap=newPriorityQueueb.compareTo(
- ARTS Week 45
javascript
Algorithm本周的算法题为1475.商品折扣后的最终价格给你一个数组prices,其中prices[i]是商店里第i件商品的价格。商店里正在进行促销活动,如果你要买第i件商品,那么你可以得到与prices[j]相等的折扣,其中j是满足j>i且prices[j]{letlowerPriceIndexes=[]letpriceDifference=0prices.forEach((compare
- JAVA面试_进阶部分_混杂(1)
茂茂在长安
JAVAjava面试开发语言
1、说说线程安全问题,什么是线程安全,如何实现线程安全;线程安全-如果线程执行过程中不会产生共享资源的冲突,则线程安全。线程不安全-如果有多个线程同时在操作主内存中的变量,则线程不安全实现线程安全的三种方式1)互斥同步临界区:syncronized、ReentrantLock信号量semaphore互斥量mutex2)非阻塞同步CAS(CompareAndSwap)3)无同步方案可重入代码使用Th
- 对称二叉树 二叉树的最大深度 二叉树的最小深度
默默修炼的小趴菜
算法数据结构
1.给定一个二叉树,检查它是否是镜像对称的。#includeusingnamespacestd;structTreeNode{intval;TreeNode*left;TreeNode*right;TreeNode(intx){val=x;left=NULL;right=NULL;}};boolcompare(TreeNode*left,TreeNode*right){if(left==NULL&
- 配置文件对比工具
foolishboy_w
开发工具提效小工具服务器json
配置文件对比工具文章目录配置文件对比工具Introdutiongit地址QuickStart1.下载源码,获取可执行的jar包2.执行jar包,对比文件3.执行结果说明Introdutionconfig-compare是一个小工具,你可以使用它来对比配置文件。目前支持的配置文件格式有yaml、yml、properties以及json,甚至你可以对比两个类型不同的文件,比如yml和json。git地
- Oxidized收集H3C交换机网络配置报错,not matching configured prompt (?-mix:^(<CD>)$)
蜜蜜不吃糖
prompt
背景:问题如上标题,H3C所有交换机配置的model都是comware解决方案:1、找到compare.rb[root@oxidizedmodel]#pwd/usr/local/lib/ruby/gems/3.1.0/gems/oxidized-0.29.1/lib/oxidized/model[root@oxidizedmodel]#llcomware.rb-rw-r--r--1rootroot
- 华为OD-E卷 - 最大矩阵和 100分(java)
敲击Time
华为od矩阵线性代数
题目给定一个二维整数矩阵,要在这个矩阵中选出一个子矩阵,使得这个子矩阵内所有的数字和尽量大,我们把这个子矩阵称为和最大子矩阵,子矩阵的选取原则是原矩阵中一块相互连续的矩形区域输入描述输入的第一行包含2个整数n,m(1maxList=newArrayList(){@Overridepublicintcompare(Integerarg0,Integerarg1){returnarg1-arg0;}}
- Vue 监听器的魔法之旅:@Watch(‘form.productId’) vs @Watch(‘value’) 大揭秘!✨
小丁学Java
产品资质管理系统vue.js前端javascriptvue2
以下是一篇技术博客,主题围绕@Watch('form.productId')和@Watch('value')这两个watcher的功能、区别及使用场景,基于compare-form.vue的代码。准备好一起探索Vue监听器的魔法了吗?Vue监听器的魔法之旅:@Watch(‘form.productId’)vs@Watch(‘value’)大揭秘!✨嘿,Vue开发者们!你有没有在项目中遇到过“数据变
- Beyond Compare for mac v5.0.6.30713 文件对比利器 支持M、Intel芯片
Macdo_cn
macos
Mac毒搜集到的BeyondCompare是一套超级的文件及文件夹(目录)的比较工具,不仅可以快速比较出两个目录的不同,还可以比较每个文件的内容,而且可以任意显示比较结果。应用介绍程序内建了文件浏览器,方便您对文件、文件夹、压缩包、FTP网站之间的差异比对以及资料同步。使用它可以管理源代码,保持文件夹的同步,比较程序输出,及验证光盘的复制。它还支持脚本、插件,尤其对中文支持很好。并列比较文件夹、F
- C# IComparer<T> 使用详解
鲤籽鲲
C#c#windows基础语法C#知识捡漏
总目录前言在C#编程中,排序操作是日常开发中不可或缺的一部分。当默认的排序逻辑无法满足需求时,IComparer提供了一种强大且灵活的解决方案。它允许我们为自定义类型提供特定的比较逻辑。这对于实现排序、搜索和其他需要基于特定规则进行比较的操作特别有用。一、什么是IComparer1.基本概念IComparer是一个泛型接口,在System.Collections.Generic命名空间中,定义了一
- 同时导出Oracle,PostgreSQL库中相同的表位CSV后调用Beyond Compare脚本对比
[.]*?
oraclepostgresql数据库
##同时导出Oracle,PostgreSQL库中相同的表位CSV后调用BeyondCompare脚本对比把Oracle库里的表移行至PostgreSQL后,需要确保数据一致性,1.把表数据以CSV形式分别导出至\out\old\out\new2.通过cmd命令调用BeyondCompare4附加脚本(BeyondCompare支持使用命令行调用其脚本功能),参数生成对比结果报告D:\Progra
- compare-form.vue 的 v 来源(来自父组件index.vue中的row行数据)
小丁学Java
产品资质管理系统ubuntulinux运维
文章目录`compare-form.vue`的父组件`compare-form.vue`的`v`来源相关代码片段1.`value`的Prop定义2.`@Watch('value')`及其`watchValue`方法3.与`value`间接相关的代码(影响`v`的初始化或使用)总结子组件compare-form.vue父组件index.vue以下是关于compare-form.vue和其父组件src
- 作业day5
m0_58248149
开发语言c++
封装一个mystring类拥有私有成员:char*pintlen需要让以下代码编译通过,并实现对应功能mystringstr="hello"mystringptr;ptr.copy(str)ptr.append(str)ptr.show()输出ptr代表的字符串ptr.compare(str)比较ptr和str是否一样ptr.swap(str)交换ptr和str的内容实现以下功能mystrings
- 6.1 接口
StarPlatinum2
Java核心技术卷1读书笔记java开发语言笔记
6.1.1接口的概念在java中,接口不是类,而是对希望符合这个接口的类的一组需求。如果你的类符合某个特定的接口,我们会履行这项服务。如Arrays类中的sort方法承诺可以对对象数组进行排序,但要求对象所属的类必须实现Comparable这个接口。下面是Comparable接口中的代码publicinterfaceComparable{publicintcompareTo(To);}Compar
- 深入理解 ABA 问题与退让策略:Go 语言实现与优化
老赵不会写代码
go语言golang开发语言后端
深入理解ABA问题与退让策略:Go语言实现与优化在并发编程中,无锁数据结构(Lock-FreeDataStructures)因其高性能和避免死锁的特性而备受关注。然而,实现无锁算法时,开发者常常会遇到ABA问题和退让策略这两个关键问题。本文将详细解释这两个问题,并结合Go语言提供具体的实现示例。一、ABA问题1.问题定义ABA问题是CAS(Compare-And-Swap)操作中一个经典陷阱。当某
- bcryptjs 依赖详解
yqcoder
mongodb数据库前端
`bcryptjs`是一个用于在Node.js中进行密码哈希处理的库,它是`bcrypt`的纯JavaScript实现,无需编译,使用起来更加方便。一、安装npminstallbcryptjs二、基本使用`genSalt()`:方法用于生成一个盐,盐的复杂度越高,哈希处理所需的时间越长,安全性也相对更高。`hash()`:方法使用生成的盐对密码进行哈希处理,得到加密后的密码。`compare()`
- 二叉树-对称二叉树
Hasno.
算法
代码随想录-刷题笔记101.对称二叉树-力扣(LeetCode)内容:本题有一定的难度,但其实想明白需要同时用到左右节点之后,就没什么难度了本题是看左右是否对称,并非左右节点是否相等,相信仔细读过题不可能不明白这一点好了,接下来开始递归三部曲1.确定返回值和参数因为要返回trueorfalse,所以一定是bool类型,参数上面也提到一定要是左右节点publicbooleancompare(Tree
- ABAP内表两种DELETE方式的性能比较
程序员在路一...
SAPABAPSAPABAP数据库
ABAP内表两种DELETE方式的性能比较以代码实例为参考:REPORTZDELETE_COMPARE.PARAMETERS:numtypeiOBLIGATORYDEFAULT100.types:beginofty_product,idtypecomm_product-product_id,texttypestring,endofty_product.data:lt_producttypeSTAN
- Excel VBA语句集
grace_jm2008
excel
ExcelVBA语句集定制模块行为(1)OptionExplicit‘强制对模块内所有变量进行声明OptionPrivateModule‘标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示OptionCompareText‘字符串不区分大小写OptionBase1‘指定数组的第一个下标为1(2)OnErrorResumeNext‘忽略错误继续执行VBA代码,避免出现错误消息(3)OnE
- java线程Thread和Runnable区别和联系
zx_code
javajvmthread多线程Runnable
我们都晓得java实现线程2种方式,一个是继承Thread,另一个是实现Runnable。
模拟窗口买票,第一例子继承thread,代码如下
package thread;
public class ThreadTest {
public static void main(String[] args) {
Thread1 t1 = new Thread1(
- 【转】JSON与XML的区别比较
丁_新
jsonxml
1.定义介绍
(1).XML定义
扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。
XML是标
- c++ 实现五种基础的排序算法
CrazyMizzz
C++c算法
#include<iostream>
using namespace std;
//辅助函数,交换两数之值
template<class T>
void mySwap(T &x, T &y){
T temp = x;
x = y;
y = temp;
}
const int size = 10;
//一、用直接插入排
- 我的软件
麦田的设计者
我的软件音乐类娱乐放松
这是我写的一款app软件,耗时三个月,是一个根据央视节目开门大吉改变的,提供音调,猜歌曲名。1、手机拥有者在android手机市场下载本APP,同意权限,安装到手机上。2、游客初次进入时会有引导页面提醒用户注册。(同时软件自动播放背景音乐)。3、用户登录到主页后,会有五个模块。a、点击不胫而走,用户得到开门大吉首页部分新闻,点击进入有新闻详情。b、
- linux awk命令详解
被触发
linux awk
awk是行处理器: 相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息
awk处理过程: 依次对每一行进行处理,然后输出
awk命令形式:
awk [-F|-f|-v] ‘BEGIN{} //{command1; command2} END{}’ file
[-F|-f|-v]大参数,-F指定分隔符,-f调用脚本,-v定义变量 var=val
- 各种语言比较
_wy_
编程语言
Java Ruby PHP 擅长领域
- oracle 中数据类型为clob的编辑
知了ing
oracle clob
public void updateKpiStatus(String kpiStatus,String taskId){
Connection dbc=null;
Statement stmt=null;
PreparedStatement ps=null;
try {
dbc = new DBConn().getNewConnection();
//stmt = db
- 分布式服务框架 Zookeeper -- 管理分布式环境中的数据
矮蛋蛋
zookeeper
原文地址:
http://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/
安装和配置详解
本文介绍的 Zookeeper 是以 3.2.2 这个稳定版本为基础,最新的版本可以通过官网 http://hadoop.apache.org/zookeeper/来获取,Zookeeper 的安装非常简单,下面将从单机模式和集群模式两
- tomcat数据源
alafqq
tomcat
数据库
JNDI(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。
没有使用JNDI时我用要这样连接数据库:
03. Class.forName("com.mysql.jdbc.Driver");
04. conn
- 遍历的方法
百合不是茶
遍历
遍历
在java的泛
- linux查看硬件信息的命令
bijian1013
linux
linux查看硬件信息的命令
一.查看CPU:
cat /proc/cpuinfo
二.查看内存:
free
三.查看硬盘:
df
linux下查看硬件信息
1、lspci 列出所有PCI 设备;
lspci - list all PCI devices:列出机器中的PCI设备(声卡、显卡、Modem、网卡、USB、主板集成设备也能
- java常见的ClassNotFoundException
bijian1013
java
1.java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory 添加包common-logging.jar2.java.lang.ClassNotFoundException: javax.transaction.Synchronization
- 【Gson五】日期对象的序列化和反序列化
bit1129
反序列化
对日期类型的数据进行序列化和反序列化时,需要考虑如下问题:
1. 序列化时,Date对象序列化的字符串日期格式如何
2. 反序列化时,把日期字符串序列化为Date对象,也需要考虑日期格式问题
3. Date A -> str -> Date B,A和B对象是否equals
默认序列化和反序列化
import com
- 【Spark八十六】Spark Streaming之DStream vs. InputDStream
bit1129
Stream
1. DStream的类说明文档:
/**
* A Discretized Stream (DStream), the basic abstraction in Spark Streaming, is a continuous
* sequence of RDDs (of the same type) representing a continuous st
- 通过nginx获取header信息
ronin47
nginx header
1. 提取整个的Cookies内容到一个变量,然后可以在需要时引用,比如记录到日志里面,
if ( $http_cookie ~* "(.*)$") {
set $all_cookie $1;
}
变量$all_cookie就获得了cookie的值,可以用于运算了
- java-65.输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999
bylijinnan
java
参考了网上的http://blog.csdn.net/peasking_dd/article/details/6342984
写了个java版的:
public class Print_1_To_NDigit {
/**
* Q65.输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999
* 1.使用字符串
- Netty源码学习-ReplayingDecoder
bylijinnan
javanetty
ReplayingDecoder是FrameDecoder的子类,不熟悉FrameDecoder的,可以先看看
http://bylijinnan.iteye.com/blog/1982618
API说,ReplayingDecoder简化了操作,比如:
FrameDecoder在decode时,需要判断数据是否接收完全:
public class IntegerH
- js特殊字符过滤
cngolon
js特殊字符js特殊字符过滤
1.js中用正则表达式 过滤特殊字符, 校验所有输入域是否含有特殊符号function stripscript(s) { var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]"
- hibernate使用sql查询
ctrain
Hibernate
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.hibernate.Hibernate;
import org.hibernate.SQLQuery;
import org.hibernate.Session;
import org.hibernate.Transa
- linux shell脚本中切换用户执行命令方法
daizj
linuxshell命令切换用户
经常在写shell脚本时,会碰到要以另外一个用户来执行相关命令,其方法简单记下:
1、执行单个命令:su - user -c "command"
如:下面命令是以test用户在/data目录下创建test123目录
[root@slave19 /data]# su - test -c "mkdir /data/test123"
- 好的代码里只要一个 return 语句
dcj3sjt126com
return
别再这样写了:public boolean foo() { if (true) { return true; } else { return false;
- Android动画效果学习
dcj3sjt126com
android
1、透明动画效果
方法一:代码实现
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View rootView = inflater.inflate(R.layout.fragment_main, container, fals
- linux复习笔记之bash shell (4)管道命令
eksliang
linux管道命令汇总linux管道命令linux常用管道命令
转载请出自出处:
http://eksliang.iteye.com/blog/2105461
bash命令执行的完毕以后,通常这个命令都会有返回结果,怎么对这个返回的结果做一些操作呢?那就得用管道命令‘|’。
上面那段话,简单说了下管道命令的作用,那什么事管道命令呢?
答:非常的经典的一句话,记住了,何为管
- Android系统中自定义按键的短按、双击、长按事件
gqdy365
android
在项目中碰到这样的问题:
由于系统中的按键在底层做了重新定义或者新增了按键,此时需要在APP层对按键事件(keyevent)做分解处理,模拟Android系统做法,把keyevent分解成:
1、单击事件:就是普通key的单击;
2、双击事件:500ms内同一按键单击两次;
3、长按事件:同一按键长按超过1000ms(系统中长按事件为500ms);
4、组合按键:两个以上按键同时按住;
- asp.net获取站点根目录下子目录的名称
hvt
.netC#asp.nethovertreeWeb Forms
使用Visual Studio建立一个.aspx文件(Web Forms),例如hovertree.aspx,在页面上加入一个ListBox代码如下:
<asp:ListBox runat="server" ID="lbKeleyiFolder" />
那么在页面上显示根目录子文件夹的代码如下:
string[] m_sub
- Eclipse程序员要掌握的常用快捷键
justjavac
javaeclipse快捷键ide
判断一个人的编程水平,就看他用键盘多,还是鼠标多。用键盘一是为了输入代码(当然了,也包括注释),再有就是熟练使用快捷键。 曾有人在豆瓣评
《卓有成效的程序员》:“人有多大懒,才有多大闲”。之前我整理了一个
程序员图书列表,目的也就是通过读书,让程序员变懒。 写道 程序员作为特殊的群体,有的人可以这么懒,懒到事情都交给机器去做,而有的人又可
- c++编程随记
lx.asymmetric
C++笔记
为了字体更好看,改变了格式……
&&运算符:
#include<iostream>
using namespace std;
int main(){
int a=-1,b=4,k;
k=(++a<0)&&!(b--
- linux标准IO缓冲机制研究
音频数据
linux
一、什么是缓存I/O(Buffered I/O)缓存I/O又被称作标准I/O,大多数文件系统默认I/O操作都是缓存I/O。在Linux的缓存I/O机制中,操作系统会将I/O的数据缓存在文件系统的页缓存(page cache)中,也就是说,数据会先被拷贝到操作系统内核的缓冲区中,然后才会从操作系统内核的缓冲区拷贝到应用程序的地址空间。1.缓存I/O有以下优点:A.缓存I/O使用了操作系统内核缓冲区,
- 随想 生活
暗黑小菠萝
生活
其实账户之前就申请了,但是决定要自己更新一些东西看也是最近。从毕业到现在已经一年了。没有进步是假的,但是有多大的进步可能只有我自己知道。
毕业的时候班里12个女生,真正最后做到软件开发的只要两个包括我,PS:我不是说测试不好。当时因为考研完全放弃找工作,考研失败,我想这只是我的借口。那个时候才想到为什么大学的时候不能好好的学习技术,增强自己的实战能力,以至于后来找工作比较费劲。我
- 我认为POJO是一个错误的概念
windshome
javaPOJO编程J2EE设计
这篇内容其实没有经过太多的深思熟虑,只是个人一时的感觉。从个人风格上来讲,我倾向简单质朴的设计开发理念;从方法论上,我更加倾向自顶向下的设计;从做事情的目标上来看,我追求质量优先,更愿意使用较为保守和稳妥的理念和方法。
&