develop tips

notes dev no tag April 30, 2022

Table of Contents

  • Table of Contents
  • Xcode
  • visual studio

    • resharper插件
    • Assist X插件
  • cLion
  • python

    • pycharm
  • vscode
  • Linux

    • vim
    • for Development

      • tar命令解压
    • as a Server
    • 麒麟
  • Data
  • GitAndSVN

    • svn
    • code maintenance
    • code download

      • 环境搭建
      • SSH Keys生成及添加
      • 克隆代码到本地
    • svn
  • dump windows

    • office

      • word
      • visio
  • myMac
  • work experience

Xcode

  • 格式化代码
  • 删除整行快捷键,my:alt + L,快捷键里自己添加的,但是是要在英文输入法的状态下。

visual studio

  • CMake命令/函数汇总(翻译自官方手册)
  • 项目结构(base on cmake):

    cmake.exe -G "Visual Studio 15 2017" -A x64 -DTHIRDPARTY_ROOT_DIR=D:\myDevelop\ThirdParty -DQT_DIR=C:/Qt/Qt5.9.6/5.9.6/msvc2017_64/lib/cmake -S D:\myDevelop\project\kneev2021\src -B D:\myDevelop\build\kneeV2021
  • 项目属性中,以下参数的灵活使用
    output directory:灵活制定调试程序的输出目录,方便在调试过程中的直接运行
    target name:制定输出可执行文件的名称
  • linker中UAC Execution Level:运行程序权限
  • ctrl+tab:在VS中切换打开的窗口,即切换各个文件
  • ctrl+K+D:代码整理(好用)
  • Ctrl+K+F:整理选中代码
  • Ctrl+Shift+F9:清理所有断点
  • F12:转到所调用函数或变量的定义
  • Shift+Tab:减少缩进
  • Ctrl+M:展开或折叠当前的代码(展开或收缩方法,类等)
  • ctrl+-:跳回上次编辑位置很好用
  • Ctrl+m+m:折叠\展开函数
  • Edit.commentSelection(编辑.注释选定内容):在设置中搜索,自定义添加注释快捷键:Ctro+/
  • Edit.UncommentSelection(编辑.取消注释选定内容):在设置中搜索,自定义添加取消注释快捷键:Ctro+'
  • Window.NextDocumentWindowNav设置切换打开页面快捷键:Ctro+T
  • Auto Hide:命令行输出,自动隐藏对看代码很友好
  • shift+F12:Find All References
  • Alt+shift+o:打开输出窗口
  • ctrl+\,e:打开错误列表
  • ctrl + q:search visual studio,类似clion查找快捷键的搜索方式
  • ctrl + -:返回,返回上一文件,如果ctrl进入定义后,回到原文件处
  • 注释/取消注释快捷键 control / ‘ 设置里的(编辑.注释)
  • vs2015中原生不支持ctrl+单击进入定义,GoToDef.vsix插件可满足需求
  • vs中tab换位空格:制表符大小选为4,勾选插入空格,即可
  • 设置visualstudio默认打开方式为管理员权限:
    找到vs安装目录下的:C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\devenv.exe

右键->兼容性疑难解答->疑难解答程序->勾选该程序需要附加权限->测试后下一步->保存设置。

以后甭管双击sln还是快捷方式,都默认使用管理员权限启动vs2017了。

  • 没有为此解决方案配置选中要生成的项目:右键项目,查看属性,常规里的配置管理器,勾选上“生成”选项即可
  • 编译报错:'initializing': cannot convert from 'const char [6]' to 'char *'

    • c++语言版本支持出现的问题
    • 在vs项目属性中c/c++中language中Conformance mode(符合模式),默认为true改为false即可
  • vs在Release模式下开启Debug调试

    • 项目属性 -> c/c++ -> 常规 -> 调试信息格式化 -> 程序数据库(/Zi)
    • 项目属性 -> c/c++ -> 常规 -> 优化 -> 已禁用(/Od)
    • 项目属性 -> 链接器 -> 调试 -> 生成调试信息 -> 生成调试信息(/DEBUG)

resharper插件

  • resharper
  • contorl + shift + G:显示简洁的navigate to,有一些常用的操作,如查看调用等
  • 菜单栏-扩展-resharper-option-IntelliSense-Autopopup,将所有的菜单都选择Display and preselect,也就是预先选择,之后就可以用enter而不是用tab进行补全了。之后tab为replace,enter为insert
  • ctrl + shift + F7:在文件中突出被引用的地方,在右侧进度条也可看到相应的标记
  • ctrl + shift + n:打开文件(Go to file)

Assist X插件

  • 增添修改快捷键前,最好命名时在最前面加上yilin_xxx,有利于后期维护,如:yilin_qDebug
  • Shortcut:log
    Description:for easy Qt logging
    Details:"$YEAR$/$MONTH_02$/$DAY_02$ $HOUR_02$:$MINUTE$ [yilin]
    当在需要打印log的地方键入log字符,则插入代码块:"2021/10/18 13:49 [yilin]
    配合easylogging++,更为方便LOG(INFO) << "$YEAR$/$MONTH_02$/$DAY_02$ $HOUR_02$:$MINUTE$ [yilin] 同样将其快捷键设置为log,极为方便
  • Alt+Shift+O: 查找整个Solution下的某个文件 O指open,打开指定的文件
  • Alt+m:当前类的函数列表
  • VAssistX.FindReferences:可设置为:Control+0
  • 设置中的Brace Matching,vs中对应大括号高亮,或者是番茄助手的highlight选项选择
  • 设置方法:VA options ->suggestions->Edit VA Snippets

    文件注释:(快捷键:/file)
    /********************************************************
      * @file    : $FILE_BASE$.$FILE_EXT$
      * @brief   :
      * @details :
      * @author  : china_zyl@yeah.net
      * @date    : $YEAR$-$MONTH$-$DAY$
    *********************************************************/
    $end$
函数注释:(快捷键:/*-)
/********************************************************
    *  @function :
    *  @brief    :  $brief$
    *  @input    :
    *  @output   :
    *  @return   :
    *  @author   :  Name  $YEAR$/$MONTH_02$/$DAY_02$ $HOUR_02$:$MINUTE$
    *  @History  :
*********************************************************/
作者注释:
/*************************Name $YEAR$/$MONTH$/$DAY$ $HOUR$:$MINUTE$ Begin**************************/
$end$
/*************************Name $YEAR$/$MONTH$/$DAY$ $HOUR$:$MINUTE$ End****************************/
  • //-:代码开发单行注释快捷键
  • /**:代码开发函数/类注释快捷键

cLion

习惯于VisualStudio开发,故在快捷键模块直接设置成为了:Visual Studio copy
  • code标签页中:Reformate Code,重新整理代码,快捷键:Ctrl+Alt+Enter
  • clion使用技巧
  • 整理代码快捷键:

    • win:Control+Alt+L
    • Mac:command+Alt+L(可设置为command+control+L方便按)
  • ⇧ + ⌘ + A 然后输入你想用到的功能,然后选中就可以了,尤其是当快捷键太多记不住的时候真的是很实用啊
  • shift + alt + 上下箭头,clion上下移动选中代码
  • idea设置选中状态下括号的提示颜色:Editor->Color Scheme->General->Match brace
  • Intellij设置默认开启不打开上一次项目:配置中的System Settings,右边的Reopen last project on startup
  • Alt + cmd + 左右键:切换前、后编辑器tab
  • 调试快捷键

    • Step Over:cmd + '
    • Step Into:cmd + ;
    • Force Step Over:alt + cmd + '
    • Force Step Into:alt + cmd + ;
    • Smart Step into:alt + cmd + ;
    • Step out:cmd + \
    • Run to Cursor:ctrl + shift + \
    • Force Run to Cursor:alt + ctrl + shift + \
    • Resume Program:ctrl + \
  • 返回上一文件光标(back & forward):cmd + [ or ]

python

  • 离线安装anaconda及第三方库

pycharm

  • pycharm向左、右缩进快捷键:shift+tab、tab(win)
  • pycharm每次运行的时候都会开一个新窗口,怎么关闭?关闭“控制台运行”模式
  • pycharm编辑器如何用鼠标滚轮随时放大缩小代码
  • pycharm为了输出结果好看,将字体设置为13号,字符间距为0.8

vscode

  • markdown自动生成toc轮子
  • 基础配置
  • Restore Windows:设置重新打开编辑器时,是否恢复所有已打开文件(建议不打开,否则每次打开都是上一次的文件很不舒服)
  • 字符自动换行:设置中Editor: Word Wrap改为on即可
  • vscode中文乱码,编码自动检测:files.autoGuessEncoding
  • 中文乱码解决方案
  • 万字长文把 VSCode 打造成 C++ 开发利器(很多可以借鉴的地方)
  • 代码整理:

    • 在Windows环境下使用快捷键:Shift + Alt + F
    • 在Mac环境下使用快捷键:Shift + Option + F
    • 在Ubuntu环境下使用快捷键:Ctrl + Shift + I
  • tab替换为空格:VSCode烦人的空格处理
    总之配置如下:

    "editor.detectIndentation": false,  //关闭检测第一个tab后面就tab
    "editor.renderControlCharacters": true, //制表符显示->
    "editor.renderWhitespace": "all", //空格显示...
    "editor.tabSize": 4,//tab为四个空格
    "editor.insertSpaces": true //转为空格
  • vscode关闭受限模式(工作区信任),启用调试等功能:security.workspace.trust改为false即可
  • 光标处的代码折叠:

    • 折叠 Ctrl+Shift+[
    • 展开 Ctrl+Shift+]
    • 如果你有更多需求的话,可以使用Ctrl+Shift+P搜索fold和unfold,以查看更多选项。以下命令使用时查找即可,不必记忆(但上文的两种还是有必要熟悉的)。
  • markdown预览快捷键:shift + cmd + v
  • code + 文件名,vscode打开指定文件
  • mermaid画markdown流程图插件
  • tree终端指令列出当前文件夹下文件,然后写入到md文件中,格式按代码块处理

Linux

vim

  • cat显示指令
  • dd删除当前行(在一般模式下)
  • ndd删除光标及其下n行
  • u撤销
  • yy复制当前行
  • p粘贴到下一行
  • nyy复制n行
  • 修改文件名:mv a b将a文件命名为b
  • :wq 保存后退出vi,若为 :wq! 则为强制储存后退出(常用)
  • :w 保存但不退出(常用)
  • :w! 若文件属性为『只读』时,强制写入该档案
  • :q 离开 vi (常用)
  • :q! 若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。
  • :e! 将档案还原到最原始的状态!
  • alias o='sudo xdg-open'
  • alias osg='osgviewer'
  • alias osge='osgearth_viewer'
  • alias getbash='sudo xdg-open ~/.bashrc'
  • alias setbash='source ~/.bashrc'
  • alias log='scirpt -f /home/yilin/output.txt'
  • alias c='cmake CMakeLists.txt'
  • alias clion='/home/yilin/softWare/clion-2022.1/bin/clion.sh'
  • alias share='sudo xdg-open /mnt/hgfs/dev'
  • 某些环境变量,Linux下在~/.bashrc,在Mac中为~/.bash_profile

    export QTDIR=/home/yilin/Qt5.12.12/5.12.12
    export PATH=$QTDIR/gcc_64/bin:$PATH
    export LD_LIBRARY_PATH=$QTDIR/gcc_64/lib
    
    export PATH=${PATH}:/home/yilin/env/osg_oe/bin
    export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/home/yilin/env/osg_oe/lib
    export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/home/yilin/env/osg_oe/lib64
    export OSG_FILE_PATH=/home/yilin/env/osg_oe/data

for Development

  • alt+F2:相当于win的win+R,可执行前往文件夹等指令
  • Ctrl+H:显示隐藏文件
  • Ctrl+Alt+T:打开终端快捷键
  • Ctrl+L:相当于clear,清屏
  • Ctrl+D:关闭终端
  • wget指令:Linux中下载文件的工具,详见wget --help(安装方法:yum install -y wget)
  • source /etc/profile使环境变量生效,且该profile文件即为环境变量储存文件
  • /mnt/hgfs/VMshared共享文件夹在Ubuntu内的路径
  • rm -rf 要删除的文件或目录:删除当前目录下所有文件及目录,并且直接删除无需逐一确认
  • xdg-open打开文件或文件夹,无空格。(macOs下对应open命令)
  • 增添环境变量:(以cmake为例)

    • vim ~/.bashrc
    • 在文末,执行i指令(insert),添加export PATH=/xxx:&PATH,xxx是cmake地址,到bin目录
    • source ~/.bashrc
  • lib库默认安装位置在/usr/lib/或者/usr/local/lib
  • alt+F4:关闭
  • dynamic:动态库,.so文件,static:静态库,.a文件
  • 接上一条,在win下,.lib为静态库,.dll为动态库。在Mac下,.a为静态库.dylb动态库,.Framework为打包方式,将库的二进制文件打包在一起。
  • 文件以tree形式列出:tree(sudo apt install tree)
  • Linux设置vi编辑器

    • 配置文件:sudo vi /etc/vim/vimrc
    • tab键位4个空格:set ts=4
    • 显示代码行数:set nu
  • 解决报错,运行脚本时,build.sh /bin/bash^M :坏的解释器:没有那个文件或目录:sed -i 's/\$//' xxx.sh,xxx.sh为对应脚本
  • 只下载不安装sudo apt-get install -d <软件包>

    • ls /var/cache/apt/archives/ #下载的包目录
  • ubuntu 执行apt-get update报错Failed to fetch:
    如果要换源的话,可以在/etc/apt里面打开source.list文件,会出现一个设置框,在导航栏第一个里面的download from里面选择源。如果要选择国内的源,找到China,里面有很多可以选择,个人体验较好清华镜像,记得sudo apt-get update
  • 重命名:
    例子:将目录A重命名为B:mv A B
    例子:将/a目录移动到/b下,并重命名为c:mv /a /b/c
  • 终端记录输出:script -f output.txt
  • make install指定目标目录

    1. 当有configure文件时指定./configure --prefix=/...自定路径,然后sudo make && make install即可
    2. 当只有CMakeLists时,对于大多数工程,特别是cmake生成的工程,make后sudo make install DESTDIR=/...路径
    3. 当只有CMakeLists时,少数工程如源码安装git发现用方法1实际上安装到了/install/directory//home/username 目录,即用户根目录,这是因为Makefile内部已经设置了一遍安装目标目录,手工设置的目录仅仅作为了一个前缀,打开Makefile文件,发现有如下代码(就在最顶端)

      prefix = (HOME) bindir =(prefix)/bin
      mandir = (prefix)/share/man infodir =(prefix)/share/info

      修改第一行prefix对应目录即可

  • linux 下长命令的简化(命令别名):在~/.bashrc文件中添加alias gps='git push origin HEAD:refs/for/master',source ~/.bashrc
  • deb文件安装:sudo dpkg -i 软件包名.deb
  • 修改文件创建时间属性:touch -mt YYYYMMDDhhmm,比如:touch -mt 201412010000 *修改当前文件夹内所有文件时间为201412010000,Mac相同

tar命令解压

  1. *.tar:用tar -xvf解压
  2. *.gz:用gzip -d或者gunzip解压
  3. *.tar.gz和*.tgz:用tar -xzf解压
  4. *.bz2用bzip2 -d或者用bunzip2解压
  5. *.tar.bz2用tar -xjf解压
  6. *.Z用uncompress解压
  7. *.tar.Z用tar -xZf解压
  8. *.xz用tar -xf解压

as a Server

以下服务端仅针对Ubuntu(麒麟适用),其他Linux方式可能会不同

  • 本机IP地址查询ip addr show,在第二个段落中inet字符后面
  • 或者ifconfig -a
  • sudo su:登录root用户
  • sudo ufw status:查看端口启用情况
  • sudo ufw allow <端口号>:开启端口号
  • sudo ufw enable:开启防火墙
  • sudo ufw disable:关闭防火墙
  • sudo ufw reload:重启防火墙
  • /etc/network/interfaces修改ip地址的文件
  • lsof -i:80查看端口是否开放,如果开放,则有返回信息,反之未开放,也可用netstat -apth查看当前所有开放端口(netstat指令需提前安装net-tools工具)
  • 无法在指定文件夹进行新建、复制粘贴等操作:

    • 权限管理,sudo chmod 777 /var/www
    • 或者直接sudo创建文件、文件夹等:

      1. cd /var
      2. sudo mkdir fileName
  • nginx:

    • 查看nginx路径:whereis nginx
    • 启动文件:/usr/sbin/nginx
    • 配置文件路径:/etc/nginx
    • 启动nginx:/usr/sbin/nginx

麒麟

  • 分辨率调整:xrandr -s 1280x800_60(xrandr查看分辨率列表,其中60为刷新率...)
  • 用户、管理员改为短密码:sudo apt remove libpam-cracklib(其实在其它Linux上sudo passwd 用户名就直接可以完成修改,但是麒麟额外需要卸载掉负责检查密码复杂度的cracklib包)
  • 麒麟系统下Qt安装路径/usr/lib/x86_64-linux-gnu/qt5
  • 分辨率问题:

    1. export QT_DEVICE_PIXEL_RATIO=1.5:该方法针对了qt的应用,例如qtcreator,qtcreator字体显示正常了,系统字体依旧小
    2. gsettings set org.mate.font-rendering dpi 150.0:桌面字体终于看得清了,不足的是该方案仅仅是放大了字体,系统原来的布局并没有一起放大
  • ctrl+alt+f5进入命令行界面,Ctrl+Alt+F7回到图形界面即可。(有的电脑是f1)ubuntu同理,sudo service lightdm start
  • 在当前文件下打开终端的快捷键:shift + F10,然后按下t

Data

(局域网)

svn:yilin
123456

OA服务器移动端地址https://159.226.29.1:89
新入职的员工请注意一下,OA的登录名是本人名字的全拼,密码是123456
第一次登录要改密码,请在电脑上改,https://159.226.29.1:80

  1. 苹果手机直接在appstore里搜索emobile即可
  2. 安卓用这个链接的第一个二维码https://emobile.weaver.com.cn/customer/azzj/produce.jsp
  3. pc端没有客户端,登陆OA在地址栏输入:https://159.226.29.1:80
  • 项目配置

CECA:加载pro文件,配置为win32项目,qt设置为qt2015(非qt2015_64)


ISCAS属性配置:

  1. 常规中的字符集改为使用多字节字符集
  2. c/c++中常规的调试信息格式改为程序数据库
  3. c/c++优化:禁用
  4. 预编译头文件:stable.h
  5. 链接器:调试中的生成调试信息设为优化以便于调试(注意debug以及release)

https://192.168.0.33/svn/cstkKernel/
https://192.168.0.33/svn/TZSatelliteSimTool/
https://192.168.0.33/svn/TZTKBQPlatform/

GitAndSVN

svn

code maintenance

  1. 本地检出develop分支
git init
git remote add origin https://git.oschina.net/null.v2.git
git remote -v
git clone git@...
  1. 基于develop分支在本地创建临时分支(feature_yymm_addInfo)
    git checkout -b feature_2107_addInfo develop
  2. 修改内容后,将本地分支映射到远程分支
git status
git add .                           // 添加修改后的内容
git commit -m "log infor"           // 提交到缓存
git push origin feature_1906_addInfo:feature_1906_addInfo    #:号前边是本地分支,冒号后面是服务端映射分支

添加:rebase操作,然后再merge操作
  1. 登录gitlab页面,选择feature_1906_addInfo_web分支和merge的目标分支。
  2. 常用命令:

git checkout . #本地所有修改的。没有的提交的,都返回到原来的状态

btw: git checkout、git reset本地的修改并不会消失,而只是从暂存区回到了工作区

code download

环境搭建

  1. git下载
  2. git安装,一路默认

SSH Keys生成及添加

  1. 右击打开Git Bash,并输入命令 ssh-keygen -t ed25519 -C "pyl@hhrbrobot.com"
  2. 回车后,输入设置密码:XXXXXXX
  3. 生成文件id_ed25519.pub(默认存放在Git Bash打开所在目录)
  4. 输入命令 cat /c/Users/Administrator/.ssh/id_ed25519.pub
    或:cat ~/.ssh/id_ed25519.pub
  5. 网页进入GitLab,点击右上角名字下拉列表,选择【Setting】->【SSH Keys】,将id_ed25519.pub里面的内容全选并粘贴到网页输入框,然后点击按钮【Add key】,至此完成。

克隆代码到本地

  1. 在本地新建代码目录:D:\gitWorkCode\StatgeVersion,如:(D:\myDevelop\KneeV2021)
  2. 在文件夹D:\gitWorkCode\StatgeVersion下,右击选择【Git Bash Here】打开Git Bash命令行窗口
  3. 输入git clone git@192.168.102.89:cppdev/kneev2021.git ,回车后输入正确的用户名及密码。
  4. git pull 从服务端拉取代码

svn

  • 在setting里的saved data中,可清理Authentiction Data,清理上一个电脑使用者的数据。
    清理完成之后,需要在svn管理员电脑服务端,一般是VisualSVNServer,新建用户,并且在目标项目上右键,权限(或者是属性巴拉巴拉的),把自己的用户名添加进去,否则访问会被拒。
  • svn理念和git不同,很是麻烦和落伍,谨记一点就是:修改和提交代码之前,一定要保持代码是最新状态(否则会冲突)

dump windows

  • 右键我的电脑,管理,服务和应用程序,来查看本地服务(若有自己手动注册或删除服务的需求,则在此观察并操作)
  • 开发Windows程序时,win的api报错,如740等,可在vs中查询报错信息,具体在"Tools->Error Lookup"
  • win+shift+s:截屏快捷键
  • 检测本地IP:在cmd中敲:ipconfig/all,其中IPv4地址即为本机IP地址(随即敲arp -a可显示局域网内IP列表)
  • 静态网页局域网访问,百度该关键字即可
  • VMware快捷键:Ctrl + B启动,Ctrl + E关闭,Ctrl + R重启
  • netsh advfirewall set allprofiles state off:关闭防火墙
  • 测试软件时,尽量在虚拟机上搞...
  • 修改键位:

office

word

  • 建立图片索引

    • 右键图片,选择“插入题注”
    • 新建想要的标签,完成建立索引
    • 当需要索引图片时,【插入】功能栏中选择【交叉引用】,选取所需即可
    • 在撰写文档时:可将字体设置为Menlo等开发时使用的字体,显示word中有代码的效果

    visio

  • visio对其所有连接线:在设计中点击连接线下面的小三角,分隔:相关线条,重叠:相关线条。

# myMac

  • 安全与隐私中,通用栏,进入睡眠或开始屏幕保护程序...要求输入密码,控制时间有利于中途查看代码,减少解锁次数
  • magnet快捷键:control + option + 上下左右(调整应用程序贴合屏幕位置)
  • magnet快捷键:control + option + enter(最大化显示)
  • Downie下载:设置中,下载目录文件格式设置为播放清单索引 - 标题,下载文件保存至文件夹:勾选任意一个可保证下载列表视频时,自动创建文件夹来放置下载的视频,否则所有文件下载至当前目录造成混乱。
  • HomeBrew安装脚本/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
  • 显示桌面快捷键:command + F3,或者Fn + F11
  • 环境变量文件:~/.bash_profile,可参考Linux部分alias指令

work experience

  • 有道词典(开发必备)
    下载好离线安装包后,离线包在如下路径:C:\Users\ISCAS-7\AppData\Local\Yodao\DeskDict\Dictionary
  • happyLogging:
    在所需log的地方添加引用:
    #include "D:/myDevelop/happyLogging/loggerFiles/easylogging++.h"
    将main函数替换为自己的main.cpp
    提交代码前可保证代码干净整洁,happy codding~
    btw,已经将include指令添加快件进番茄助手,简直不要再香,快捷键为:#
  • Qt程序运行提示“it could not find or load the QT platform plugin “windows”,打开qt的终端,然后进入release目录,执行windeployqt ***.exe即可完成qt库的收集。
  • 工作初期,尽量不要信心满满说:“我完成了”、“没问题了”之类的话,应该将:"您再帮我审查下“,"您再帮我把把关"
  • matlab、python计算脚本随时准备好,log库随时准备好
  • 代码初步改完了,测试用例还没写,您抽空帮我检查下一遍吧

提问:

  1. In my limited experience with .. 谦虚表达自己在某方面的经验
  2. I am searching for a long time on net. But no use. Please help or try to give some ideas how to achieve this. 找了很久未果,求助攻
  3. after searching around for a decent XX solution and found that everything out there was difficult to use. 找了N种方法都发现太TM难了
  4. I've looked around and apparently I've got the choice between these libraries/ solutions: 说明自己是努力搜索过的,然后目前有了哪几种方案
  5. which seems it's a promising solution. 看起来是一个好解决方案
  6. I`ve tried multiple variations of this, but none of them seem to work. Any ideas? 试了很多种方法都无效,求助
  7. Wanted to know if it's good practice to do that and what would be the best way to do that? 我的做法是否正确,是否有更好的法子?
  8. Thanks in advance. 先行谢过

回答问题:

  1. If I understand you correctly, you want to xxx 如果我没理解错,你想。。
  2. Can you provided more details about your use case ? Can you provide more xml and code setting the url ? 提供更详细

当别人回答你的问题后,你对回答的评论:

  1. thank you for your answer sincerely 感谢回答blabla

思路整理:

  1. 每种错误最多允许自己走一遍,如果错过那就记下来,不要重复试错,很浪费时间,更糟糕的是容易使脑子混乱。
  2. 记住走错的方法容易走向误区,就是很详尽,不用遍历,但是方法的方向要把握,具体的度要在工作中把握。
  3. 总之多推理少无谓的试错。
  • cmake使用示例与整理总结
  • 雨天
取消回复

说点什么?
Title
tar命令解压
环境搭建
SSH Keys生成及添加
克隆代码到本地
word
visio

© 2022 烈性果汁 . 苏ICP备19059248号