contract owned {

				//定义一个变量"owner"，这个变量的类型是address，这是用于存储代币的管理者。
				//owned()类似于C++中的构造函数，功能是给owner赋值。
        address public owner;

        function owned() {
            owner = msg.sender;
        }

				//定义一个modifier(修改标志)，可以理解为函数的附属条件。
				//这个条件的内容是假设发送者不是owner（管理者），就跳出。起到一个身份鉴别的作用。
        modifier onlyOwner {
            require(msg.sender == owner);
            _;
        }

        //实现所有权转移
        //定义一个transferOwnership函数，这个函数是用于转移管理者的身份。
        //注意，transferOwnership后面跟着"onlyOwner"。所以这个函数的前提是，执行人必须是owner。
        function transferOwnership(address newOwner) onlyOwner {
            owner = newOwner;
        }
}
//创建一个owned合约
function transferOwnership(address newOwner) onlyOwner {
    owner = newOwner;
}

//实现所有权转移
//定义一个transferOwnership函数，这个函数是用于转移管理者的身份。
//注意，transferOwnership后面跟着"onlyOwner"。所以这个函数的前提是，执行人必须是owner。