Flat Leon Works

アプリやゲームを作ってます。

2017-12-01から1ヶ月間の記事一覧

【Nim】クラス定義マクロを作ってみる

Nim

Nimにはクラスという概念がありません。しかし、オブジェクト指向プログラミング自体はサポートされており、object型を使えばクラスとほぼ同じことが可能になっています。ただし、object型の定義が微妙に面倒なことに加え、やはりクラスが欲しいということで…

【Nim】seq型とstring型のリファレンスの罠【追記:v0.19.0にて解決済み】

Nim

[追記] Nimバージョン 0.19.0 で、seq型とstring型のデフォルト値が nil ではなく @[] と "" になりました。この仕様変更により、ここで指摘していた"罠"は根本的に解決されたことになります。一応この記事は残しておきますが、もう気にする必要がないことで…

【Nim】文字列操作

Nim

Nimでの文字列操作関連をまとめてみました。 Nimのバージョンは 0.17.2 を想定しています。( 執筆時の最新バージョン ) 文字列の基本 文字、文字列リテラル 文字、文字列型 文字列関連モジュール 標準モジュール(system,strutils)の文字列関連プロシージャ …

NimとC++を比較してみる

この記事は「Nim Advent Calendar 2017」の記事として登録させてもらっています。 NimはNimソースコードをC言語ソースへ変換するトランスコンパイラ言語です。これは普段C++を使っている人にとって非常に重要なことです。なぜなら、C++(C言語)が使える環境な…

【Nim】個人的逆引きリファレンス

Nim

Nimの勉強を兼ねて逆引きリファレンスとしてまとめてみようと思います。随時更新。(最終更新日:2022/4/10) この記事は「Nim Advent Calendar 2017」の記事として登録させてもらっています。 注意: 使用しているNimのバージョンは1.6.0です 間違っているかも…

【Nim】メモ

Nim

基本情報 リンク 標準ライブラリ 言語仕様メモ 諸条件の違いによるマクロ仮引数のNimNode構造の違い テンプレートでのシンボル束縛(bind)について テンプレート仮引数の参照ルール テンプレートの衛生 逆引きリファレンス未作成項目 基本情報 作者 : Andreas…