Quantcast
Channel: よーめー日記
Viewing all articles
Browse latest Browse all 223

SwiftでもC++でもコンパイルできるようにHello Worldを書いてみた。

$
0
0
プログラム言語Swiftを勉強していたら#ifが使えるらしいことが書いてありました。
これは、SwiftでもC++でもコンパイルできるソースコードが書けるのではないかと思い、早速両方のコンパイラでコンパイルできるHello Worldを書いてみました。

Swiftは#ifの中も全て構文解析するので#ifでくくるだけでは両方でコンパイルすることはできません。
従ってSwiftはコメントがネスとできるという機能も使ってC++特有の部分を記述しています。
両方の文法を満たすのって結構難しいです。

想像していた以上に読みづらく、もう全く実用にならないです。


-------------------


#ifSWIFT
    /*/**/
#endif
    
#include <stdio.h>

#if SWIFT
    /**/*/
#endif



#ifSWIFT
    /*/**/
#endif

static void println(const char* a){
    printf("%s\n",a);
}

#if SWIFT
    /**/*/
#endif

#ifSWIFT
    /*/**/
#endif
    
int main(){

#if SWIFT
    /**/*/
#endif



println("Hello, World!");



#ifSWIFT
    /*/**/
#endif

}
   
#if SWIFT
    /**/*/
#endif




Viewing all articles
Browse latest Browse all 223

Trending Articles