Solidity ポイント抜粋 (from クリプトゾンビ)
## お作法
注:グローバル変数と区別をつけるために、関数パラメーター変数名はアンダースコア(_)をつけるのが通例(必須ではありません)です。このチュートリアルでは通例に従います。
構造体配列と配列
sample
struct Person {
uint age;
string name;
}
Person[] public people;
// 新しいPersonを作る:
Person satoshi = Person(172, "Satoshi");
// それを配列に格納する:
people.push(satoshi);
// こうやると一気にできる
people.push(Person(16, "Vitalik"));
// 通常の配列へのPUSH
uint[] numbers;
numbers.push(5);
numbers.push(10);
numbers.push(15);
// 数字は [5, 10, 15]
配列返却する時
sample
contract EtherTest{
// 配列宣言して、登録があるたびにPUSHして、増やしていく。eth_sendtransactionでPUSHしていくイメージ
// ポイントviewするときの通信経路。マイニングに関係がないことを明確に
string[] Stations;
// フォームから値を取得してPUSHする関数
function StationRecord(string _station) public{
Stations.push(_station);
}
// 配列の長さを返却して、javascript側で、インクリメントしないとダメ?っぽいのでそうしてみる
function StationLeng() public view returns (uint32){
return uint32(Stations.length);
}
function StationDisplay(uint32 _number) public view returns(string){
return Stations[_number];
}
}