enum。它们位于相同的命名空间中,但头文件不同。//C1.h
#include <QObject>
namespace SW
{
Q_NAMESPACE
enum class Enum1 {A, B};
Q_ENUM_NS(Enum1)
}
Run Code Online (Sandbox Code Playgroud)
//C2.h
#include <QObject>
namespace SW
{
Q_NAMESPACE
enum class Enum2 {A, B};
Q_ENUM_NS(Enum2)
}
Run Code Online (Sandbox Code Playgroud)
//main.c
#include <QDebug>
#include <QMetaEnum>
#include "C1.h"
#include "C2.h"
int main(int argc, char *argv[]) {
auto me1 = QMetaEnum::fromType<SW::Enum1>();
qDebug() << "me1 valid:" << me1.isValid();
auto me2 = QMetaEnum::fromType<SW::Enum2>();
qDebug() << "me2 valid:" << me2.isValid();
}
Run Code Online (Sandbox Code Playgroud)
moc_C1.o都moc_C2.o定义了staticMetaObject结果Q_NAMESPACE我正在尝试用C编写程序.程序应该找到给定数组的GCD(最大公约数).我试图使用最小数量的数组来找到GCD.我想知道我上一次循环的错误.我没有想办法如何检查除法是否给出任何小数点以便停止循环.这是我的代码
#include <stdio.h>
#include <stdlib.h>
int main()
{
int A[10]={112, 160, 180, 240, 288, 32, 480, 96, 60, 72};
int i;
int j;
int minimum = A[0];
int GCD;
int temp;
for (i=1;i<9;i++)
{
if( A[i] < minimum)
{
minimum = A[i];
}
}
for (i=1; i < minimum/2; i++)
{
for (j = 0; j < 9;j++)
{
GCD = 2*i;
temp = ((A[j])/(GCD));
int check = temp%1;
if (check == 0)
break;
}
}
printf("The Greates Common Denominator …Run Code Online (Sandbox Code Playgroud)