[雑談?]自作ヘッダを公開してみる[Take2]

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
kaiten

[雑談?]自作ヘッダを公開してみる[Take2]

#1

投稿記事 by kaiten » 16年前

SWITCH.h
http://dixq.net/code/SWITCH.h

また湧いてきました。kaitenです。
学校を病欠している間にSWITCH.hがそれなりに形になったのでまた晒しに来た次第です。
病欠で何故そんなことしてるって?いやだって退くt(ry

冗談はおいといて、今回もまた問題点などを挙げていただこうと思いこの場を借りさせていただきました。
前回ご指摘いただいた型指定の排除やS_ENDの排除が思った以上に難航しているのでそれについての解法も御教授いただければ幸いです。

まだreadmeを作ってないので仕様があやふやなのですが、基本的に使用法は前回と変わっていません。
変更点は、FALL(RUN)機能の廃止、REFINE系機能の廃止(REFINEなしで強制的に同等の効果があるはずです)、
DEFAULT機能の使用を選択式に変更、旧バージョンとの互換性破棄、continueに対応、速度面の大幅なパフォーマンス向上(BCCDeveloperにて計測したところ、DEFAULT機能不使用時に本家switchに勝る速度を確認)、
#pragma onceを使わず#ifでインクルードガードを行うよう変更したことです。

hoge

Re:[雑談?]自作ヘッダを公開してみる[Take2]

#2

投稿記事 by hoge » 16年前

>>前回ご指摘いただいた型指定の排除やS_ENDの排除が思った以上に難航しているので
>>それについての解法も御教授いただければ幸いです。
こんな感じかな。
使い方は以下の通り、ほぼswitch文と同じ。
SWITCH(i)
    {
    CASE(3): printf("3です\n");  break;
    CASE(4): printf("4です\n");  break;
    IN_CASE(7,10): printf("7から10です\n");  break;
    DEFAULT: printf("その他\n");  break;
    }

kaiten

Re:[雑談?]自作ヘッダを公開してみる[Take2]

#3

投稿記事 by kaiten » 16年前

hogeさん、ありがとうございます。
dynamic_castを使えばこのような方法で可能なのですね。自分では思いつきもしませんでした。
それ以前に、breakとcontinueの両方に対応させるためにswitch文を内部で使うという発想自体がなかったです。

既に上げた自作の物はそのうちほぼそのまま自ページにて公開するつもりなのですが、添付していただいたものを参考にして作ったものも公開させていただいてよろしいでしょうか?自分で理解してから組みますが、どうしても似たような感じになってしまうと思うので……
御許可を頂けない場合は万に一つも添付して頂いたものを参考に作ったヘッダを公開するようなことは致しません。

hoge

Re:[雑談?]自作ヘッダを公開してみる[Take2]

#4

投稿記事 by hoge » 16年前

自由にどうぞ。

ぶら下がりelse対策ができていないけど。

kaiten

Re:[雑談?]自作ヘッダを公開してみる[Take2]

#5

投稿記事 by kaiten » 16年前

ありがとうございます。

ぶら下がりelse対策ですか…こちらで考えてみます。

閉鎖

“C言語何でも質問掲示板” へ戻る