ご挨拶。
私は、mpegレイヤーIIIエンコーディングが次のプロジェクトでどのように機能するかを研究しています。一番シンプルと言われているシャインエンコーダーをダウンロードしました。http://www.mp3-tech.org/programmer/sources/shine.zipがリンクです。
スタンドアロンプロジェクトで正常にコンパイルしましたが、QTプロジェクトで使用する必要があります。
QTで新しい空のコンソールプロジェクトを作成し、以前に正常にコンパイルされたすべてのファイル(shine.zipからのファイル)を既存のものとして追加しました。
これは私のmain.cppです:
#include <QtCore/QCoreApplication>
#include "main.h"
int main(int argc, char *argv[])
{
// QCoreApplication a(argc, argv);
// return a.exec();
mainc(argc,argv);
}
これはmain.hです:
#ifndef MAIN_H
#define MAIN_H
#include "main.c"
#endif // MAIN_H
他のすべては変更されていません(つまり、これら2つのファイルがないと、正常にコンパイルされて機能しました)
この部分でエラーが発生しています
#ifndef bool
typedef unsigned char bool; <--- "redeclaration of C++ built-in type 'bool'"
#endif
ここでエラーが発生する前。私が理解していることから、1つのcppファイルが存在すると、すべてのコードがc ++としてコンパイルされ、shineコードはc++ではなくcになります...QTクラスQCoreApplicationを使用するプロジェクトでcコードを使用できないということですか?