C または C++ でコーディングする場合、#include
's はどこに配置すればよいですか?
コールバック.h:
#ifndef _CALLBACK_H_
#define _CALLBACK_H_
#include <sndfile.h>
#include "main.h"
void on_button_apply_clicked(GtkButton* button, struct user_data_s* data);
void on_button_cancel_clicked(GtkButton* button, struct user_data_s* data);
#endif
コールバック.c:
#include <stdlib.h>
#include <math.h>
#include "config.h"
#include "callback.h"
#include "play.h"
void on_button_apply_clicked(GtkButton* button, struct user_data_s* data) {
gint page;
page = gtk_notebook_get_current_page(GTK_NOTEBOOK(data->notebook));
...
すべてのインクルードは .h または .c / .cpp のいずれかに含める必要がありますか、それともここで行ったように両方に含める必要がありますか?
ベストアンサー1
にはできる限り多くのものを入れ.c
、 にはできる限り少なく入れます.h
。 のインクルードは.c
その 1 つのファイルがコンパイルされるときにのみインクルードされますが、 のインクルードは.h
それを使用するすべてのファイルによってインクルードされる必要があります。