方法:
const int row = 4int ** M2D = new int * [row]
for(int i = 0 i < row ++ i)
{
M2D[i] = new int [row - i - 1]
for(int j = 0 j < row - i - 1 ++ j)
{
M2D[i][j] = i
}
}
原理如下:
int ** 作为二维数组的存储地址,也可以视为一维数组的数组,先为这个指针申请行空间(对应为各个数组的数组头),再为各个数组头申请一维数组所需的空间。
二维数组可分为** *[] 和[][],三者的存储方式可以不同,具体的在c++ prime里面有详解。
第一种:<script type="text/javascript" src="./js/jquery-1.7.min.js"></script>
<script type="text/javascript">
//init method one
$(document).ready(function(){
trace("初始化方法进入")
})
function trace(obj){
console.log(obj)
}
</script>
第二种:
<script type="text/javascript">
//init method one
$(function(){
trace("初始化方法进入二")
})
function trace(obj){
console.log(obj)
}
</script>
第三种:
<script type="text/javascript" src="./js/jquery-1.7.min.js"></script>
<script type="text/javascript">
//init method one
jQuery(function($){
trace("初始化方法进入三")
})
function trace(obj){
console.log(obj)
}
</script>
function Test(){}Test.prototype.init = function(){}
如果要创建一个Test的实例,并调用init方法,那最普通的做法是:
var test = new Test()
test.init()
这样做也没错,我们的想法是它创建的时候其实就是在做初始化的工作,那干脆就简化它,在new的时候就让他直接自动调用init方法,省去再次手动调用,所以一般都会写成如下形式:
function Test(){
this.init.apply(this, arguments)
}
在init方法里面一般是做一些事件绑定,界面初始化的工作。