1. String.Format 与 StringBuilder
文章链接:https://blog.csdn.net/zphshiwo/article/details/81450301
2. GameObject.name 与 GameObject.tag 对比字符串会造成意想不到的内存分配
函数调用GameObject.name 或者 GameObject.tag也会造成预想不到的堆内存分配,这两个函数都会将结果存为新的字符串返回,这就会造成不必要的内存垃圾,对结果进行缓存是一种有效的办法,但是在Unity中都对应的有相关的函数来替代。对于比较gameObject的tag,可以采用GameObject.CompareTag()来替代。
void TestTag()
{
for (int i = 0; i < m_count; i++)
{
if (m_obj.tag == "111")
{
}
}
}
Profiler.BeginSample("TestTag");
TestTag();
Profiler.EndSample();