<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[阿童木的博客]]></title><description><![CDATA[不能则学，不知则问，耻于问人，决无长进。]]></description><link>https://blog.youkuaiyun.com/Jason_520</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Jason_520]]></copyright><item><title><![CDATA[Unity 获取截屏 并且呼起微信分享]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/78051449</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/78051449</guid><author>Jason_520</author><pubDate>Thu, 21 Sep 2017 14:16:06 +0800</pubDate><description><![CDATA[Unity 获取截屏 并且呼起微信分享    IEnumerator GetScreenshot(bool isBigShare = false)
    { 
        // 截屏1帧后再呼起微信
        yield return new WaitForEndOfFrame();        string imgPath = System.IO.Path.Combine(Appli]]></description><category></category></item><item><title><![CDATA[C# 线性表之单链表]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/59092408</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/59092408</guid><author>Jason_520</author><pubDate>Wed, 01 Mar 2017 12:46:13 +0800</pubDate><description><![CDATA[数据类：namespace 单链表
{
    /// <summary>
    /// 结点
    /// </summary>
    /// <typeparam name="T"></typeparam>
    public class Node<T>
    {
        private T data; //数据域
        private Node<T> next; /]]></description><category></category></item><item><title><![CDATA[C# IEnumerable和IEnumerator 详解]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/56494386</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/56494386</guid><author>Jason_520</author><pubDate>Wed, 22 Feb 2017 18:19:50 +0800</pubDate><description><![CDATA[初学C#的时候，老是被IEnumerable、IEnumerator、ICollection等这样的接口弄的糊里糊涂，我觉得有必要切底的弄清楚IEnumerable和IEnumerator的本质。 
下面我们先看IEnumerable和IEnumerator两个接口的语法定义。其实IEnumerable接口是非常的简单，只包含一个抽象的方法GetEnumerator()，它返回一个可用于循环访问集合]]></description><category></category></item><item><title><![CDATA[验证一个数是否为4的n次幂]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/56482097</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/56482097</guid><author>Jason_520</author><pubDate>Wed, 22 Feb 2017 11:42:03 +0800</pubDate><description><![CDATA[将4的幂次方写成二进制形式后，很容易就会发现有一个特点：二进制中只有一个1（1在奇数位置），并且1后面跟了偶数个0； 因此问题可以转化为判断1后面是否跟了偶数个0就可以了。 
4的整数次幂的二进制数都为 (4)100、(16)10000、(64)1000000…… 
另外，4的幂次方4^n也可以写为2^(2*n)，即也可以写为2的幂次方，当然就满足2的幂次方的条件了，即num & num-1==0。]]></description><category></category></item><item><title><![CDATA[Struct和Class的区别]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/56347788</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/56347788</guid><author>Jason_520</author><pubDate>Tue, 21 Feb 2017 23:47:54 +0800</pubDate><description><![CDATA[C++中的struct对C中的struct进行了扩充，它已经不再只是一个包含不同数据类型的数据结构了，它已经获取了太多的功能。 
struct能包含成员函数吗？ 能！ 
struct能继承吗？ 能！！ 
struct能实现多态吗？ 能！！！  
既然这些它都能实现，那它和class还能有什么区别？ 
最本质的一个区别就是默认的访问控制：  
默认的继承访问权限 
struct是public的，cla]]></description><category></category></item><item><title><![CDATA[堆和栈的区别]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/56342541</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/56342541</guid><author>Jason_520</author><pubDate>Tue, 21 Feb 2017 23:32:10 +0800</pubDate><description><![CDATA[一、预备知识—程序的内存分配一个由C/C++编译的程序占用的内存分为以下几个部分 
  1、栈区（stack）—   由编译器自动分配释放   ，存放函数的参数值，局部变量的值等。其 
  操作方式类似于数据结构中的栈。 
  2、堆区（heap）   —   一般由程序员分配释放，   若程序员不释放，程序结束时可能由OS回 
  收   。注意它与数据结构中的堆是两回事，分配方式倒是类似于链表，]]></description><category></category></item><item><title><![CDATA[C# 线性表之顺序存储结构]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/55264222</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/55264222</guid><author>Jason_520</author><pubDate>Thu, 16 Feb 2017 18:06:41 +0800</pubDate><description><![CDATA[前言毕业大半年了，发现自己在数据结构与算法这一块的知识不扎实，所以重新回顾一下大学学的知识并且做一些笔记。谢谢大家。举例白羊座，金牛座，双子座，巨蟹座，狮子座，处女座，天秤座，天蝎座，射手座，摩羯座，水瓶座，双鱼座，12个星座是按顺序排列的，都有自己固定的位置，除了第一个白羊座没有前驱，和最后一个双鱼座没有后驱，其他的都有前驱和后驱。定义线性表可以说是最简单的数据结构，它的描述为：n个数据元素的有限]]></description><category></category></item><item><title><![CDATA[Unity MeshRender中material和sharedmaterial的区别]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54969906</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54969906</guid><author>Jason_520</author><pubDate>Fri, 10 Feb 2017 14:08:23 +0800</pubDate><description><![CDATA[创建一个Cube和Sphere，创建一个Material，更改Shader为Unlit/Color，然后将新创建的材质托给Cube和Sphere。创建一个测试脚本Public class Test : Monobehaviour
{
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.F1))
        {]]></description><category></category></item><item><title><![CDATA[Unity 中OnBecameVisible和OnBecameInvisible的使用]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54967238</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54967238</guid><author>Jason_520</author><pubDate>Fri, 10 Feb 2017 11:54:05 +0800</pubDate><description><![CDATA[今天要使用到这两个函数，自己创建了一个脚本：public class Test：Monobehaviour
{
    void OnBecameVisible()
    {
        Debug.Log("OnBecameVisible");
    }    void OnBecameInvisible()
    {
        Debug.Log("OnBecameInvisib]]></description><category></category></item><item><title><![CDATA[Unity 及 VS2015 创建脚本时自动添加头部注释]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54934674</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54934674</guid><author>Jason_520</author><pubDate>Wed, 08 Feb 2017 23:46:28 +0800</pubDate><description><![CDATA[首先来看下Unity：在Editor文件夹下创建脚本如下：using UnityEngine;
using System.Collections;
using System.IO;namespace UGUIFrameWorkEditor
{
    public class ChangeScriptTemplates : UnityEditor.AssetModificationProcessor]]></description><category></category></item><item><title><![CDATA[Unity3D Json序列化与反序列化存储到ScriptableObject]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54644805</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54644805</guid><author>Jason_520</author><pubDate>Sat, 21 Jan 2017 09:51:26 +0800</pubDate><description><![CDATA[不懂ScriptableObject创建的请看之前文章ScriptableObject的创建。拿到策划给我们这样一个Excel表格，我们需要先通过Json在线编辑器将它转换为Json，看图： 
将Excel内容全选复制转换成这样： 
复制内容丢到JSON在线编辑器里边，并且给内容添加一个大括号，以及添加个属性名，最后把最后一个‘，’去掉，看图： 
然后点击这个东西将内容复制下来，在Unity某个文件]]></description><category></category></item><item><title><![CDATA[Unity3D 动画系统的StateMachineBehaviours]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54630820</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54630820</guid><author>Jason_520</author><pubDate>Fri, 20 Jan 2017 13:54:08 +0800</pubDate><description><![CDATA[创建动画状态机脚本：using System;
using UnityEngine;
using System.Collections;public class AnimatorStateMachine : StateMachineBehaviour
{    public Action<int> EnterStateCallBack;
    public Action<int> ExitStat]]></description><category></category></item><item><title><![CDATA[Unity3D 单利模式]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54628778</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54628778</guid><author>Jason_520</author><pubDate>Fri, 20 Jan 2017 08:59:27 +0800</pubDate><description><![CDATA[using UnityEngine;
using System.Collections;public class Singleton<T> : MonoBehaviour where T : MonoBehaviour
{
    private static T instance;    /**
       Returns the instance of this singleton.]]></description><category></category></item><item><title><![CDATA[Unity3D 实例化UGUI自适应的预设]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54620398</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54620398</guid><author>Jason_520</author><pubDate>Thu, 19 Jan 2017 23:38:27 +0800</pubDate><description><![CDATA[拉个预设如图： 
    public GameObject m_Prefab;    void Start () {
        GameObject go=Instantiate(m_Prefab);
        go.transform.SetParent(transform);
    }我们直接实例化这个设置好自适应的UGUI预设，如果我们直接实例化会这样： 
 
这样的结果完全不]]></description><category></category></item><item><title><![CDATA[C# 位运算符]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54620036</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54620036</guid><author>Jason_520</author><pubDate>Thu, 19 Jan 2017 22:32:30 +0800</pubDate><description><![CDATA[表：位运算符 
A=60,B=13；
  运算符
  描述
  实例  $
  如果同时存在于两个操作数中，二进制 AND 运算符复制一位到结果中。
  (A & B) 将得到 12，即为 0000 1100
  l
  如果存在于任一操作数中，二进制 OR 运算符复制一位到结果中。
  (A l B) 将得到 61，即为 0011 1101
  ^
  如果存在于其中一个操作数中但不同时存在于两个]]></description><category></category></item><item><title><![CDATA[C# 斐波那契数列]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54619559</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54619559</guid><author>Jason_520</author><pubDate>Thu, 19 Jan 2017 21:24:43 +0800</pubDate><description><![CDATA[斐波那契数列（Fibonacci sequence），又称黄金分割数列，指的是这样一个数列：1、1、2、3、5、8、13、21、34、……在数学上，斐波纳契数列以如下被以递归的方法定义：F(0)=1，F(1)=1, F(n)=F(n-1)+F(n-2)（n>=2，n∈N*）。1.        static int Func(int n)
        {
            if (n <=]]></description><category></category></item><item><title><![CDATA[C# Lambda表达式]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54619341</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54619341</guid><author>Jason_520</author><pubDate>Thu, 19 Jan 2017 20:46:56 +0800</pubDate><description><![CDATA[首先先看下委托：delegate int GuangChaoshi(int a);
static void Main(string[] args)
{
      GuangChaoshi gwl = JieZhang;
      Console.WriteLine(gwl(10) + "");   //打印20，委托的应用
      Console.ReadKey();
}public sta]]></description><category></category></item><item><title><![CDATA[C# 匹配中文字符串的4种正则表达式分享]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54618479</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54618479</guid><author>Jason_520</author><pubDate>Thu, 19 Jan 2017 17:57:32 +0800</pubDate><description><![CDATA[本文介绍在C#中使用匹配中文的正则表达式，包括纯中文、有中文、中文开头、中文结尾等几个正则表达式示例。在正则表达式中，中文可以通过Unicode编码来确定正则表达式范围。 
在C#中，匹配中文的正则表达式用Unicode来表示时，范围是： [\u4e00-\u9fa5]。所以，在此基础上，我们可以得到如下一些正则表达式。1、匹配字符串全部是中文字符的正则表达式 
代码如下:“^[\u4e00-\u9]]></description><category></category></item><item><title><![CDATA[Unity 5.x中的AssetBundle（二）]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54616953</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54616953</guid><author>Jason_520</author><pubDate>Thu, 19 Jan 2017 15:53:40 +0800</pubDate><description><![CDATA[二、AssetBundle下载Unity 5.x中的AssetBundle（一）一、Downloading AssetBundles（下载资源包） 
    这里有两种方式下载AssetBundles： 
    1、非缓存方式下载：通过创建一个WWW类对象来下载（WWW www = new WWW(url)），这种方式不会缓存到本地存储的文件中。 
    2、缓存方式下载：通过使用WWW.Loa]]></description><category></category></item><item><title><![CDATA[Unity 5.x中的AssetBundle（一）]]></title><link>https://blog.youkuaiyun.com/Jason_520/article/details/54602257</link><guid>https://blog.youkuaiyun.com/Jason_520/article/details/54602257</guid><author>Jason_520</author><pubDate>Thu, 19 Jan 2017 15:49:35 +0800</pubDate><description><![CDATA[最近在研究lua，接触了AssetBundle，恩，记录下学习心得吧。 
官方文档：https://docs.unity3d.com/Manual/AssetBundlesIntro.html



一、为AssetBundle起名字，并打包

官方的图，在Inspector检查器窗口的底部是AssetBundle菜单，从第一个下拉框中选择或设置AssetBundle的名称，第二个下拉框是附加选项]]></description><category></category></item></channel></rss>