自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(103)
  • 资源 (10)
  • 收藏
  • 关注

原创 如何在Objective-C里定义一个全局的NSArray

1,OC是一门动态的语言,不可以直接在编译的过程中直接定义这个NSArray。只能在编译的时候声明一个对象指针,然后在实际运行的时候,再进行alloc, init。2,使用

2021-05-28 14:12:10 584

原创 -fpic与-fPIC

Object文件我们在Linux开发过程中经常会遇到Object file这个名词,你可以称之为对象文件。常见的对象文件有三种: 可重定位的对象文件(Relocatable file) 这是由汇编器汇编生成的 .o 文件。后面的链接器(link editor)拿一个或一些 Relocatable object files 作为输入,经链接处理后,生成一个可执行的对象文件 (Executable file) 或者一个可被共享的对象文件(Shared object file)。我们可以使用 ar 工

2020-09-22 18:20:10 1523

原创 32bit program cannot run on 1904 64bit

sudo dpkg --add-architecture i386sudo apt-get -y install lib32z1 libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses6

2020-09-02 18:55:55 302

原创 Ubuntu 1904 cannot execute “sudo apt-get update“

Refer to https://www.digitalocean.com/community/questions/unable-to-apt-update-my-ubuntu-19-04First,sudo sed -i -re 's/([a-z]{2}\.)?archive.ubuntu.com|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.listThensudo apt-get update .

2020-09-02 12:50:46 250 1

原创 C++为什么要用传引用常量替换传值

优势1 效率高假设现在有一个Person类作为基类,还有一个Student类继承自Person,如下:class Person {public: Person(); virtual ~Person(); // 最好把基类的析构函数加上virtualprivate: std::string name; std::string address;};class Student : public Person {public: Student();

2020-05-26 10:31:37 346

原创 C++为什么要尽可能地使用const(Effective C++)

当const遇见指针(常量指针与指针常量)国内的很多教材、教程里常常提到常量指针和指针常量,很多公司面试的时候也会问到区别。乍一看好像很绕,其实也不难,下面的例子将具体的讲解一下。char greeting[] = "Hello";char* p = greeting; // non-const pointer, non-const dataconst char* p = greeting; // non-const pointer, const

2020-05-25 17:50:06 445

原创 LeetCode4-Median of Two Sorted Arrays(C++)

DescriptionThere are two sorted arrays nums1 and nums2 of size m and n respectively.Find the median of the two sorted arrays. The overall run time complexity should be O(log (m+n)).You may assume n...

2020-04-15 13:26:02 160

原创 LeetCode3-Longest Substring Without Repeating Characters(C++)

DescriptionGiven a string, find the length of the longest substring without repeating characters.Example 1:Input: “abcabcbb”Output: 3 Explanation: The answer is “abc”, with the length of 3. Exam...

2020-04-15 13:25:32 168

原创 LeetCode2-Add Two Numbers(C++)

DescriptionYou are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers ...

2020-04-15 13:24:55 189

原创 LeetCode1-Two Sum(C++)

DescriptionGiven an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not us...

2020-04-15 13:24:08 197

原创 LeetCode15-3Sum(C++)

DescriptionGiven an array nums of n integers, are there elements a, b, c in nums such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note:The solution set mus...

2020-04-04 19:06:25 216

原创 LeetCode14-Longest Common Prefix(C++)

DescriptionWrite a function to find the longest common prefix string amongst an array of strings.If there is no common prefix, return an empty string “”.Example 1:Input: [“flower”,“flow”,“flight”]...

2020-04-04 19:05:28 183

原创 LeetCode13-Roman to Integer(C++)

DescriptionRoman numerals are represented by seven different symbols: I, V, X, L, C, D and M.Symbol Value I              &...

2020-04-04 19:03:08 206

原创 LeetCode12-Integer to Roman(C++)

DescriptionRoman numerals are represented by seven different symbols: I, V, X, L, C, D and M.Symbol Value I              &...

2020-04-04 19:02:30 212

原创 LeetCode9-Palindrome Number(C++)

DescriptionDetermine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward.Example 1:Input: 121 Output: true Example 2:Input: -121 Output: fa...

2020-04-04 08:08:20 179

原创 LeetCode8-String to Integer (atoi)(C++)

DescriptionImplement atoi which converts a string to an integer.The function first discards as many whitespace characters as necessary until the first non-whitespace character is found. Then, starti...

2020-04-04 08:07:28 164

原创 LeetCode7-Reverse Integer(C++)

DescriptionGiven a 32-bit signed integer, reverse digits of an integer.Example 1:Input: 123Output: 321Example 2:Input: -123Output: -321Example 3:Input: 120Output: 21Note:Assume we are deal...

2020-04-04 08:04:12 156

原创 LeetCode6-ZigZag Conversion(C++)

DescriptionThe string “PAYPALISHIRING” is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)P A H NA...

2020-04-04 08:03:05 229

原创 LeetCode5 - Longest Palindromic Substring(C++)

Description:Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.Example 1:Input: “babad”Output: “bab”Note: “aba” is also a valid ans...

2020-04-03 20:41:47 168

原创 C++内联函数inline

内联函数定义与使用常规函数的调用过程  编译过程的最终产品是可执行程序–由一组机器语言指令组成。运行程序时,操作系统将这些指令载入到计算机内存中,因此每一条指令都有特定的内存地址。有时,比如说遇到循环或者判断语句,会跳过一些指令,向前或向后跳到特定的地址。常规函数调用也使得程序跳转到下一个地址–函数的地址,并在函数结束时返回。  更具体的过程是执行到...

2020-03-08 10:47:33 966

原创 C++ const用法

const限定符在变量前面加上const,也可以创建一个常量。使用const创建常量的一般格式如下:const type name = value;使用const的时候应该注意在声明中对const变量进行初始化。const int toes;toes = 10;以上用法是错误的,会带来编译错误。如果常量在声明的时候没有提供值,则该常量的值将是不确定的,且无法修改。常量...

2020-03-07 09:55:00 383

原创 C++名称空间(namespace)

前言当随着C++项目项目的增大,名称相互冲突的可能性也将增加。使用多个厂商的类库时,可能导致名称冲突。例如,两个类库可能都定义了名为List, Tree和Node的类,但定义的方式不兼容。用户希望使用其中一个库的List类,而使用另一个库的Tree类。这种冲突就被称为名称空间问题。A demo for namespacenamespace Jack { double pail...

2020-03-03 09:50:35 910

原创 C++ 如何避免一个头文件被include多次

同一个文件中只能将一个头文件include一次。记住这个规则很容易,但是很可能在不知情的情况下将头文件包含多次,因为你include的头文件里可能还会include其它的头文件,这样层层嵌套,很容易出现上面的问题。这时就会带来编译的错误。C/C++中有一种标准的技术可以有效避免多次include同一个头文件,即预编译指令#ifndef(if not defined)。例如对于我们定义的头文件&...

2020-03-02 20:28:39 4761

原创 C++ 全局变量链接性、extern、static关键字

单定义原则、外部变量与externC++有“单定义原则(One Definition Rule, ODR)”, 该规则决定了任何变量都只能有一次定义。为了实现这种需求,C++提供了两种变量声明。一种是定义声明(definition declaration),或者简称为定义(definition),它给变量分配存储空间;另外一种是引用声明(referencing declaration),或者简...

2020-03-02 19:58:10 972

原创 C++ 拷贝构造函数浅析

什么是拷贝构造函数:拷贝构造函数,顾名思义,就是在拷贝的时候调用的构造函数。几个原则:C++ primer p406 :拷贝构造函数是一种特殊的构造函数,具有单个形参,该形参(常用const修饰)是对该类类型的引用。当定义一个新对象并用一个同类型的对象对它进行初始化时,将显示使用拷贝构造函数。当该类型的对象传递给函数或从函数返回该类型的对象时,将隐式调用拷贝构造函数。C++支持两种...

2020-03-01 03:30:48 181

原创 C++中static_cast, const_cast, reinterpret_cast, dynamic_cast的区别

C++中存在显示转换和隐式转换,所谓隐式转换即是比如int和float相加时,int会自动转换成float,此外还有显示转换,共有四种转换方法, static_cast, const_cast, dynamic_cast, reinterpret_cast隐式转换一般都是比较安全的,而且C中的类型转换一般通过()来实现,C++之所以将它们变成四个关键字有以下两个原因,程序中存在大量的(),...

2020-03-01 03:25:45 178

原创 C++中NULL和nullptr的区别

前言C和C++的变量名是对大小写敏感的,因此NULL和null并不是一回事,前者是C/C++中的系统关键字,null并不是。C++11以后又引入了nullptr,用以解决NULL在隐式转换和作为函数传入参数时的二义性问题。在C++11以前,在C/C++语言中,我们常常用NULL作为指针变量的初始值。而在C++11之后,却不建议你这么做。其实NULL根据命名全大写可以看出来,它是一个常量...

2020-03-01 03:22:41 809

原创 Vim 快捷键-光标移动

1,单字符移动k 上移 j 下移 h 左移 l 右移2,单词(word)移动w 移动到下一个单词开头e 移动到下一个单词结尾b 移动到上一个单词开头3,整行移动0 移动到行首$ 移动到行尾+ 移动到下一行开头- 移动到上一行开头4,滚动屏幕Ctrl + f 向前滚动一整屏Ctrl + b 向后滚动一整屏Ctrl + d 往前滚动半屏C...

2019-11-13 09:34:26 282

原创 Linux 命令行内快捷键

"cd -" 打开上次访问的目录。"Ctrl + r" 可以通过关键词搜索历史调用的命令,并且直接使用。”Ctrl + k“ 删除当前字符到行尾。”Ctrk +u“ 删除当前字符到行首。”Ctrl + w“ 删除光标到当前字符的开头。”Ctrl + l“ = "clear", 刷新屏幕,实际上相当于屏幕向上翻了一页。”Ctrl +c“ 输入完命令后,如果不想执行,可以使用这...

2019-11-13 09:18:10 240

原创 阿里云ECS服务器解决8080和3306端口不能访问

出于安全考虑,实例默认只为外界开放了22和3389两个TCP端口,因此,想使用其它端口访问,需要进行一些配置。不然,就会造成在Server上用localhost可以访问mysql和tomcat,但是公网ip不可以。设置方法也很简单,按照下面的步骤一步步做就可以了。第一步,进入实例:第二步,选择安全组配置:第三步,添加安全组:重新试一下吧,看看自己的服务能否访问。...

2019-11-12 22:30:28 1458 1

原创 Ubuntu18 安装和配置 mysql

在命令行上输入命令:sudo apt-get install mysql-server mysql-client安装过程中如果没有提示输入密码,参考这个链接:https://blog.csdn.net/gulang03/article/details/82790821打开/etc/mysql/debian.cnf 查看mysql默认的用户名密码登陆成功后,运行my...

2019-11-01 17:41:25 170

原创 Linux下gdb命令初探

GDB,全称GNU Project Debugger, 是GNU公司推出的一款调试工具。想要使用gdb命令,需要在用gcc编译的时候,在编译参数中加入“-g”。编译成功之后,可以使用"gdb + exec file"进入gdb调试命令行。常用命令:info stack 查看调用栈的信息。info register 查看除了向量寄存器和浮点寄存器意外的其它寄存器。info all...

2019-11-01 17:07:22 178

原创 堆与栈,深拷贝与浅拷贝的区别

内存区域结构: Memory ------------------ | Heap | |------...

2019-11-01 17:04:51 699

原创 .dYSM文件是什么

.dSYM文件存储了app里面的debug symbol。Xcode编译项目后,会在app旁看见一个同名的.dSYM文件(符号文件)。当release版本crash后,会有一个日志文件,包含出错的内存地址。使用symbolicatecrash工具能够把日志和.dSYM文件转换成可以阅读的log信息。...

2019-11-01 16:40:22 1520

原创 Mach-O文件是什么

Mach-O是Mach Object文件类型的缩写,它是一种用于可执行文件,目标代码,动态库,内核转储的文件格式。作为a.out格式的替代,Mach-O提供了更强的扩展性,并提升了符号表信息的访问速度。...

2019-11-01 16:38:58 309

原创 Linux file, nm, strip命令的作用

file命令可以查看文件的bit,是不是可执行文件以及该文件的架构,有没有strip等等。nm命令可以列出.o,.a,.so中的符号信息,包括诸如符号的值,符号的类型以及符号名称等等。所谓符号,通常是指定义出来的函数和全局变量等等。“-u”参数可以打印出未定义的符号,需要和其它对象文件进行连接。strip命令可以去除符号表。由于符号表常常占用很大的内存空间,但是,符号表又是Debug过程中...

2019-11-01 16:37:05 1099

原创 iOS App签名过程浅析

前言大家需要首先明确两个事情:首先,想开发iOS的App, 你需要有一台Mac, 并且安装上Xcode, 想要在App Store里上架App,你需要有一个开发者的账号,在苹果的开发者网站(developer.apple.com)里缴纳99美刀(相当于交一个入场费吧,对于企业开发者来说,自然是很随意,对于个人开发者来说,T_T)。本文默认大家都已经有了这个开发者账号。其次,iOS系统和...

2019-11-01 16:34:20 774

原创 Linux系统中的软连接与硬链接

Unix操作系统为除了进程以外的所有操作,包括硬件设备,文本,图像,鼠标键盘,网络等等提供了一组通用的API,它们在被处理的时候均采用字节流的方式。通俗地讲,在Unix系统中,除了进程以外,一切都是文件。Linux系统由于是在Unix的基础上发展而来的,因此很好地继承了这一特性。连接(Link),顾名思义,就是通过该文件可以访问到另外一个文件。Linux中,连接的方式有两种,一种是硬链接(Ha...

2019-11-01 14:27:41 355

原创 Xcode内置的工具命令(Build Log中常见)

Xcode常见的工具命令 工具名称 用途 xcodebuild 编译Xcode工程的命令行工具 sh 运行Shell文件 xcexec 执行wrapper clang 编译器 ld 链接器 ibtool nib资源文件本地化,编译xib成nib ibtoold 资源文件链接 actool asset资源...

2019-11-01 14:21:59 1787

原创 leetcode1-Two Sum(C++)

提交代码:class Solution {public: vector<int> twoSum(vector<int>& nums, int target) { vector<int> result(2); for(int i=0;i < nums.size() - 1; i++)...

2019-07-15 18:58:35 715

jackson jar包,包含三个必备成员annotations,core,databind

jackon是用于在java web的工程里解析json文件的jar包,这三个是jackson必备的jar包。

2018-12-30

mysql-connector-java-5.1.0 jar包

这是java web工程与mysql数据库连接的中间件,直接导入至工程中即可使用,调用相应的方法。

2018-12-30

springmvc开发所需的所有jar包

windows-jdk1.8版本,64位电脑,下载解压完毕后可直接导入到eclipse的工程里使用。

2018-12-30

fritzing软件,解压可直接运行,win64

Fritzing是一款十分友好的Arduino电路图绘制软件,包含很多原件,适合用来做相关的PPT。

2018-12-27

基于Mybatis的Java程序,可以读取mysql的内容并打印(内含jar包)

Mybatis初学者很好的调试程序,可以直接运行。没有部署在server上,是一个Java application,环境来说要求很低。

2018-12-27

基于SpringMVC的学生成绩管理

可以在网页上实现对mysql数据库的增删改查,使用了springmvc框架,界面很友好,适合初学者调试。

2018-12-27

SpringMVC框架-Hello World!界面包含超链接跳转。

开发环境为Eclipse,内含所需的各类jar包,可以显示HelloWorld,并有超链接功能。适合初学调试程序。

2018-12-27

中国机场、航站楼航线信息+复杂网络分析+GUI动态界面

使用复杂网络对每个机场和航站楼在网络中的节点信息计算出来,然后根据这些信息使用pyecharts这个包在地图上对节点、网络、航线进行绘图。最后使用tkinter制作了一个GUI的界面,把这些功能集成到了一起。

2018-12-19

(准确)机场四字码 对应的机场名称 城市和省份

列出了机场四字码和名称、城市、省份的对应关系。可以很方便的查询。便于绘制航线图,是一个非常有用的工具。

2018-12-17

WumpusWorld 使用 KnowledgeBase的AI 实现

可以实现按要求开展50-100次游戏,每次游戏中的怪兽、坑、金子均随机出现,且可以调节pits出现的概率。Agent会根据KB理论尽可能地选取最佳路径获得金币,赢得胜利。日志会记录每次的移动信息与在每一个cell所感知到的信息(气味、微风)。

2018-12-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除