改めて、MQLのローカライズについて - ページ 7

 
DDFedor >> :

一般論として、官僚はプログラミングを全くやらないし、財務担当者は自分で「報告書」を作ることをプログラミングとは思っていない、つまり、どんな製品でも「ユーザー」と「プログラマー」は区別して考えるべきだということを言いたかったのですが......。今はプログラマーのための環境の話をしているのであって、ユーザーである「会計士・金融業者」は、メタエディタを開かないトレーダーと同様に、このトピックでは全く代表的ではありません...。ロシア人」とか「ロシア人じゃない」とか、そんなことはどうでもよくて


今ならわかるよ。私の元同僚の例を(すでに)挙げることができます。1Cはロシア語なので、ほとんどユーザーと同じように早く覚えてしまうのです。
 
defines "ですべてを定義するモジュールを作るのは難しいのでしょうか?そして、ロシア語や他の言語による番組も用意される予定です。
 
yuripk >> :
defines "ですべてを定義するようなモジュールを作るのは難しいのでしょうか?また、ロシア語やその他の言語によるプログラミングも行われる予定です。

以下は、エラーなしでコンパイルできるコードです。

#define цикл for 
#define целое int 
#define Печать Print

void OnStart()
{
   целое Сумма = 0;
   цикл ( целое Номер = 0; Номер < 10; Номер++) Сумма += Номер;
   Печать (  Сумма );
}

問題は、未完成のバグフィッチなのか、このままなのか、ということです。 なぜなら、いつか開発者がチェックに手を出して、予約語を定義に使うのを禁止することになるかもしれないからです :(

 
ForexTools >> :

難しいことではなく、以下はエラーなしでコンパイルできるコードです。

問題は、それが未完成のバグフィックスなのか、それともこのままなのか、ということです。 なぜなら、開発者がある日突然チェックするようになり、定義で予約語を使うことを禁止することになるかもしれないからです :(

技術的には、定義とはパース時に使用される特定の言語トークンの集合のことです。

どのトークンも、どのセットも禁止するのは意味がない。
唯一重要なことは,言語文(if, for, return, ...)のオーバーライドを許可してはいけないということです.
今は、「システム」言語機能を定義可能なリストから除外することも考えています。

 
ForexTools >> :

難しいことではなく、以下はエラーなしでコンパイルできるコードです。

問題は、それが未完成のバグフィックスなのか、それともこのままなのか、ということです。 なぜなら、開発者がある日突然チェックするようになり、定義で予約語を使うことを禁止することになるかもしれないからです :(

そのプリプロセッサがSischの原理で動作していれば、チェックは表示されない。

ただ、Cishのプリプロセッサがマクロにロシア語の名前をつけてしまうのが気になるところです。:)

 
mql5 >> :


唯一重要なことは、言語演算子をオーバーライドできないことです(if, for, return, ...)。

もちろん再定義することはできませんが、「名前を変える」ことはできます(私の例では、forはループによって名前を変えています)。

 
mql5 >> :

技術的には、定義とは、構文解析の過程で置換される言語内のトークンの集合のことである。

どのトークンも、どのセットも禁止するのは意味がない。
唯一重要なことは,言語文(if, for, return, ...)のオーバーライドを許可してはいけないということです.
現在、「システム」言語機能を定義可能なリストから除外することを検討しています。


禁じ手 - 私たちの市民が慣れていること。
 
yuripk >> :


禁止する-市民が慣れ親しんでいるもの。

何のことだかよくわからないが...。


>>ので、できます。

#define если "тут можно написать что угодно и это всё вставиться в код при встрече 'если'"


というのはNGです。

#define if "нельзя ключевые слова переопределять - ошибка компиляции"


ができない場合があります。

#define Sleep "на данный момент так написать можно, но скорее всего это мы прикроем - будет ошибкой при компиляции"

 

ここでは、そのヘルプから抜粋してご紹介します。欲しい人はぜひ試してみてください ;)

// Типы данных			
                                    
#define		логический      bool			
#define		символ          char			
#define		бзсимвол        uchar			
#define		короткий        short			
#define		бзкороткий      ushort		
#define		целый           int			  
#define		бзцелый         uint			
#define		длинный         long			
#define		бздлинный       ulong			
#define		двойной         double		
#define		плавающий       float			
#define		цвет            color			
#define		датавремя       datetime	
#define		строка          string		
#define		перечисление    enum			
#define		структура       struct		
#define		класс           class			
#define		безтипа         void			
		 			                          
                                    
// Спецификаторы доступа			
					                          
#define		константа       const			
#define		личный          private		
#define		защищенный      protected	
#define		публичный       public		
#define		виртуальный     virtual		
					                          
                                    
// Классы памяти			
                                    
#define		внешний         extern		
#define		статический     static		
#define		ввод            input			
		 			                          
					                          
// Операторы			
					                          
#define		поумолчанию     default		
#define		размер          sizeof		
#define		новый           new			  
#define		удалить         delete		
#define		если            if			  
#define		иначе           else			
#define		выбор           switch		
#define		вариант         case			
#define		выполнить       do			  
#define		пока            while			
#define		цикл            for			  
#define		прервать        break			
#define		продолжить      continue	
#define		возврат         return		
			                              
					                          
// Прочие			
					                          
#define		ложь            false			
#define		этот            this			
#define		истина          true			
                          
                          
 
ForexTools >> :

ここでは、そのヘルプから抜粋してご紹介します。もしよかったら、試してみてください ;)

また、mqh-checkに入れ、inludeからの呼び出しを直接テンプレートに書き込むことも可能です。

何を探しているのですか?