ocamlに問題があります。OCamlの副作用とトップレベルの表現
私はそれを呼び出し、カウンター番号と私のvargen文字列を連結し、この新しい文字列を返すたびに私のカウンターをインクリメントする関数を作りたいと思います。
let (counter : int ref) = ref 0;;
let (vargen : string) = "_t";;
let tmp = incr counter;ref (vargen^string_of_int !counter);;
Printf.printf "%s\n" !tmp;;
Printf.printf "%s\n" !tmp;;
Printf.printf "%s\n" !tmp;;
Printf.printf "%s\n" !tmp;;
しかし、私の出力は常に、次のとおりです:私は成功せずにやった
がある
_t1
_t1
_t1
_t1
そして、何が私の出力は次のようになります。
_t0
_t1
_t2
_t3
解決するための任意のアイデア私の問題ガツ?
すべてが有効です。
非常に良い説明、今私はなぜ私のプログラムisnt作業理解した。 – tsukanomon