百度地图引擎初始化失败
百度地图升级了SDK,库文件编程了framework.可以看到Resources文件夹下有mapppi.bundle.
将framework拖入工程,你会发现工程能运行,地图也能出来,可是突然某一天你发现地图就不显示了.
在官方文档中讲述了需要引入mapapi.bundle,那为何将该文件打包至framework中?你能想象,之前能运行,结果后来一直报内存泄露的错误,最终只是因为这个bundle文件没有加入工程吗?
引以为戒
Redis是一款依据BSD开源协议发行的高性能Key-Value存储系统.通常被成为数据结构服务器,因为值可以是字符串(String),哈希(Map),列表(list),集合(sets)和有序集合(sorted sets)等类型.
提供一个英文的在线互动学习地址: http://try.redis.io/
命令不需要管大小写,但是键大小写是敏感的
在redis,和json类似,类似键值对,所以一定要注意理解键key、值value
编程的都知道,以0开始,所以别被忽悠了
先列出常用命令
1 | DECR, DECRBY, DEL, EXISTS, EXPIRE, GET, GETSET, HDEL, HEXISTS, HGET, |
设置键值,SET key value
,有点相当于关系型数据库中的插入
取值,GET key
,相当于关系型数据库中的查询
将这个项目部署上heroku,成为一个线上项目.
参考原作者的App, http://serene-falls-9294.herokuapp.com/
使用git clone git@github.com:Ricardo-Li/node-practice-2.git
命令克隆项目
代码中的Procfile文件:
1 | web: node app.js |
一个是app.js
文件:
1 | app.listen(process.env.PORT || 5000); |
这两者都是为了部署heroku所做.
const是一个C语言的关键字,它限定一个变量不允许被改变,产生静态作用.
常类型是指使用类型修饰符const说明的类型,常类型的变量的值是不能改变的.(可以采取别的方式修改值)
下面的代码错在哪里?
1 | const int n = 5; |
为什么编译器会报错,”常量”和”只读变量”是有区别的.常量,例如5,”abc”等等,肯定是只读的,常量被编译器放在只读区域,当然也就不能修改.而”只读变量”则是在内存中开辟一个地方来存放它的值,只不过这个值被编译器限定不允许修改.
下面的代码哪一句有错误?
1 | typedef char *pStr; |
答案是p2++
错误. const的基本使用形式: const type m; 限定m不可变,只读. 可以对应*p1
不可变,p1
可变.p2
不可变
a
和&a
的本质a
和&a
的本质C语言数组名是一个特殊的东西
int a[5] = {1, 2, 3, 4, 5}
a &a &a[0]
这三个的值是相等的
a是数组名,值是数组首元素的地址.数组名是一个指针常量,能用于指针运算
但是有两种情况比较特殊:
&a这才是一个数组指针,值是数组的地址
注意: &a
和a
的值相等,但是*&a
和*a
的值不相等.说明*&a
是对这个数组指针进行了取值操作,取得的是数组首元素的地址,还是一个指针,而不是对&a
的值所代表的内存地址进行取值.这应该是C语言对数组指针运算的特殊规定.*a
就不言而喻是数组首元素的值
1 | #include <stdio.h> |
结果:
1 | a = 5fbff780 |
讲解 this, var, (function(){})
1 | var parent = function () { |
学过一点别的编程语言肯定都会直觉的认为,内部函数可以访问外部函数的变量,外部不能访问内部函数的变量.因此childAge在parent中会报错.如果声明变量是少了var,就声明就全局变量了.
在Nodejs中,全局变量会被定义在global对象下,在浏览器中,全局变量会被定义在window下.
如果需要定义全局变量,请显示的定义在global或window对象上.
有一个字符串var number = '100'
,我们要将它转换成Number类型的100
三个选项: + , parseInt, Number
测试哪种方法更快
首先得有一个benchmark库, https://github.com/bestiejs/benchmark.js
貌似很久没更新的样子,依旧可以使用
按照实例跟着写:
1 | var web_development = "python php ruby javascript jsonp perhapsphpisoutdated"; |
找出其中包含p但不包含ph的所有单词,即[ 'python', 'javascript', 'jsonp']
开始这门课之前,先学习
正则表达式30分钟入门教程
然后继续学习零宽断言
正则表达式之:零宽断言不『消费』
很久以前,处理字符串领域的王者当属perl.
后来出现一个标准叫pcre.
不过前两个都不算标准,后来出现了正则表达式.js里的正则表达式与pcre不兼容.
测试自己写的正则表达式可以访问http://refiddle.com/,所见即所得地调试
讲述js中正则表达式
正则表达式:一个字符处理标准,指令一段正则表达式字符串,用来检索、替换那个符合正则表达式的文本.
http://tool.oschina.net/regex 提供在线测试
元字符 | 说明 | 匹配字符 | 匹配数量 |
---|---|---|---|
\b | 匹配一个位置,单词的开头或结尾 | V | |
. | 匹配除了换行符以外的一个任意字符 | V | |
\d | 匹配一个数字 | V | |
\s | 匹配任意的空白符,包括空格、制表符、换行符、中文全角空格等 | V | |
\w | 字母、数字、下划线或汉字 | V | |
^ | 匹配字符串的开始 | V | |
$ | 匹配字符串的结束 | V | |
\ | 如果需要查找元字符本身,请使用字符转义,例如\. .\\ .\* |
V | |
* | 匹配字符可以重复任意次数 | V | |
+ | 匹配字符一次或更多次 | V | |
? | 匹配字符零次或一次 | V | |
{n} | 匹配字符n次 | V | |
{n,} | 匹配字符n次货更多次 | V | |
{x,y} | 匹配至少x次,最多y次字符 | V | |
[aeiou] | 匹配aeiou中的任一字符 | V |
通过正则表达式字符串的格式为 元字符 匹配数量
、字符 匹配数量
或匹配字符 匹配数量
注意:’(‘和’)’都是元字符,单独在正则表达式中使用元字符只会匹配一次
学习完上面的正则表达式,我们可以写出这样复杂的表达式1
\(?0\d{2}[)-]?\d{8}
可以匹配(010-88886666)
这样的电话号码
看了这篇文章,可能是我太笨,有可能是作者太牛逼,反正我是没看懂,都没下他写的demo
写的什么鬼,自己来搞一搞
原文链接:http://lvwenhan.com/ios/458.html
新建一个空项目,在target->General->Deployment Info中勾选
不然只会支持你所选择的方向(那就没得玩了)
然后再Main.storyboard中拖入一个按钮,放到左上角一些,why?因为不在界面上放个东西,改变方向你会晕的
现在run,手动改变方向command+⬅️
,效果给你个截图
可以看到屏幕的方向会随着设备的方向而改变,Landscape Left(顺时针转,home键在左),如果用户锁定了屏幕旋转,那就不用讨论设备转向的情况下屏幕跟随转向的问题了
1 | //file ViewController.m |
显而易见的,这个方法控制我们的页面是否跟随设备转动而改变方向
Update your browser to view this website correctly. Update my browser now