0

私のアプリケーションでは、#defineメソッドを選択する代わりに AND を 1 として、OR を 0 として表したいのですが、以下のサンプルプログラムに示すように、列挙型を使用してそれらを表しています

#include <stdio.h>

enum gateConnection_t
{AND,OR}
gateConnection;

int main()
{

bool and_t = AND;
bool or_t = OR;

printf("%d\n",and_t);
printf("%d\n",or_t);

return 0;
}

上記のように、ブール値の vvariables に enum 値を直接割り当てています。プログラムは期待どおりに動作し、私の唯一の質問は、完了した内部キャストが安全かどうか、または次のような明示的なキャストを使用する方がよいstatic_castかどうかです。

4

2 に答える 2

1
enum gateConnection_t
{AND=1,OR=0}
gateConnection;

また

enum gateConnection_t
{
OR=0,
AND  //<== this equal to the previous plus one automatically 
}gateConnection;
于 2013-06-11T13:37:14.727 に答える