LoginSignup
0
0

More than 5 years have passed since last update.

Ethereum Solidity ノウハウ

Last updated at Posted at 2018-05-31

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_sendtransactionPUSHしていくイメージ
    // ポイント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];
    }
}
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0