笔试面试——unity基础篇
加载AssetBundle
主要两种方式,分别是new WWW(url)和WWW.LoadFromCacheOrDownload
new WWW是无论什么情况都从指定的URL中下载资源,并加载到内存中
WWW.LoadFromCacheOrDownload是把AssetBundle写入到缓存中,然后在需要加载AssetBundle时,再从缓存中读取AssetBundle,达到一个加速效果,而...
Lua常用自定义函数
去除字符串首尾的空格
打印table
table去重
table的长度
table最大值
将阿拉伯数字转换为语文汉字数字
去除字符串首尾的空格
function trim(s)
return (string.gsub(s, "^%s*(.-)%s*$", "%1"))
end
string1 = " RUNOOB "
string2 = tri...
Lua编码的一些注意事项
交换变量
pairs 和 ipairs区别
取长度操作符’#’
lua实现三目运算符
select变长参数
交换变量
遇到赋值语句Lua会先计算右边所有的值然后再执行赋值操作,所以我们可以这样进行交换变量的值:
x, y = y, x -- swap 'x' for 'y'
a[i], a[j] = a[j], a[i] ...
关于SGI STL中的容器的简介
关于SGI STL中的容器的简介
SGI STL主要含有两类容器:序列式容器和关联式容器。
序列式容器(Sequence Container)
标准:array(build-in), vector, heap, priority-queue;
非标准: list, slist, deque;
配接器:stack, queue。
1. vector
单向开口连续线性动态空间,一般...
STL中的两类元素删除操作
STL中的两类元素删除操作
主要参考侯捷老师的《STL源码剖析》。
通常在STL中的删除操作有以下两种:
- erase() 函数;
- remove() 函数;
在介绍这两个函数前还需要介绍以下全局函数copy()和destory():
copy()函数经常被调用,为此,SGI STL的copy算法用尽各种办法包括函数重载,型别特性,偏特化等技巧来加强效率。copy()的函数...
c++中使用空指针调用成员函数的理解
使用空指针调用成员函数会如何?
举个例子:base是基类,里面有两个函数:non-virtual func2 以及 virtual func1;
derived是派生类,使用public继承自base,里面有四个函数:virtual func1,non-virtual func3,non-virtual func4以及static non-virtual func5,特别注意:func4调用了...
返回结果的HTTP状态码。
返回结果的HTTP状态码
HTTP状态码表示客户端HTTP请求的返回结果、标记服务器端的处理是否正常、通知出现的错误等工作。
状态码类别
1xx 信息性状态码 表示接收的请求正在处理
2xx 成功状态码 表示请求正常处理完毕
3xx 重定向状态码 表示需要进行附加操作以完成请求
4xx 客户端错误状态码 表示服务器无法处理请求
5xx 服务端错误状态码 表示服务器...
《深度探索C++对象模型》读书笔记第四章:Function语意学
一.Nonstatic Member Functions(非静态成员函数)
准则:非静态成员函数至少和一般的非成员函数有相同的效率。编译器内部已经将成员函数转换为非成员函数。
转换分为三个部分:
- 1.添加this指针为函数的第一个参数,如果成员函数是const, 那么this指针的类型为: const className * const this;并且对每一个nonstatic da...
《effective c++》读书笔记之 让自己习惯c++
Accustoming Youself to C++
条款1.视c++为一个语言联邦
C++是个多重范型编程语言,同时支持过程形式、面向对象形式、函数形式、泛型形式、元编程形式。视c++为一个语言联邦,包括以下四个部分:
C. C++说到底还是以C为基础。这是面向过程的部分,C与C++相比,少了模板、异常以及重载。
Object-Oriented. 面向对象部分,包括封装、继承、多态以及虚...
《深度探索C++对象模型》读书笔记第一章:关于对象
《深度探索C++对象模型》读书笔记之 关于对象
前言
c语言中,“数据”和“处理数据的操作(函数)” 是分开声明的,将这种程序方法称为程序性(procedural),比如声明一个struct Point3d:
struct Point3d {
float x;
float y;
folat z;
};
而操作该数据数据的函数例如打印函数,只能另外定义成:
vo...
斐波那契数列及其对数时间算法
斐波那契数列及其对数时间算法
前些天做IEEE校内算法赛的时候,遇到了一道关于斐波那契数列的题,要求是对数时间;今天在牛课网上刷leetcode,看到爬楼梯问题,于是在网上搜索了一下,自己参考并总结了下斐波那契数列及其算法。主要参考了知乎这个问题下的回答最高赞回答。
斐波那契数列大家应该都很熟悉:0 1 1 2 3 5 8… ,递推公式如下:
f(n)={f(n−1)+f(n−2)if2≤n...
《深度探索C++对象模型》读书笔记第二章:构造函数语义学
《深度探索C++对象模型》读书笔记之 构造函数语义学
编译器背着程序员做了很多事,explicit关键字的导入,是为了制止“单一参数的constructor”被当作一个conversion运算符。这一章中,挖掘了编译器对于“对象构造过程”的干涉,以及对于“程序形式”和“程序效率”的冲击。
一.Defalut Constructor的构造过程
关键:是编译器需要(就会合成默认构造函数)...
《深度探索C++对象模型》读书笔记第五章:构造析构拷贝语意学
《深度探索C++对象模型》读书笔记第五章:构造析构拷贝语意学
对于abstract base class(抽象基类),class中的data member应该被初始化,并且只在constructor中或者在其他member functions中指定初值。
纯虚函数的存在
纯虚函数,虚函数在声明后加上 = 0,纯虚函数的意义在于只定义一个可继承的接口,并没有实现(虚函数意义在于定义一个可继...
《深度探索C++对象模型》读书笔记第六章:执行期语意学
《深度探索C++对象模型》读书笔记第六章:执行期语意学
C++在执行期的一些变化,例如临时对象的产生,临时对象的构造和析构成本是我们需要考虑的,我们将在第三节具体讲解。
一.对象的构造和析构
一般而言,我们将object尽可能放置在使用它的那个程序区段附近,这样可以节省非必要的对象的构造和析构成本。
全局对象
已经初始化全局对象均存储在data segment(数据段),未初始化...
Qt工作笔记-使用QGraphicsItem加载图片并实现碰撞
因为要做一个游戏,在线只是一个知识点例子,作下笔记而已。只给出伪代码,游戏作玩,开源发布!!!这里有2个知识点一个是QGraphicsItem的绘图。一个是QGraphicsItem的碰撞。实现绘图要重写:boundingRect()和paint();一定要保证所有的绘图都要在boundingRect()的边界之中。本次绘图代码如下:QRectF Graphic::boundingRect()co...
今日推荐
周排行