1

私のプロジェクトでは、v8boostの 2 つのライブラリを使用しています。Boost は.hppヘッダーに拡張子を使用しますが、v8 はヘッダーに.h拡張子を使用します。

一日の終わりに、私のソース コードは次のように始まります。

#include "v8.h"
#include "boost/filesystem.hpp"
...

この件について私が尋ねた別の質問では、一般的な答えは、それは問題ありませんが、名前の間で一貫性を保つ必要があるというものでした.

このコードはうまくコンパイルされますが、コーディング スタイル/標準 - 大丈夫ですか? この問題の解決策はありますか (何らかの方法ですべて.hpp.h自動的に変更するなど)。

ありがとう。そして、愚かな質問をして申し訳ありません。

4

2 に答える 2

3

矛盾は気にしないでください、それは問題ではありません。多くの場合、そのような詳細に執着するのに多くの時間が費やされており、誰もが罪を犯しています.

独自のコーディング基準と一致するようにしてください。

最終的には、サードパーティのライブラリを使用するか、自分とは異なる規則を使用するいくつかのライブラリを使用することになります。それについてできることは何もありません。多くの場合、使用するこれらのライブラリのうち 2 つが標準と競合し、互いに競合します。これはインクルード拡張だけでなく、function_that_does_somethingvsFunctionThatDoesSomthingのような命名規則にも使用できます。問題ありません。

他の人のライブラリを変更して自分のコーディング標準に合わせようとすることは絶対にやめてください。たとえば、boost .hpp の名前を .h に変更します。これは悪い考えであり、ライブラリの新しいバージョンにアップグレードしたい場合は悪夢になります。

このような詳細について心配するのではなく、解決しようとしている問題をより洗練された方法で解決することに時間を費やしてください。

于 2010-07-01T04:09:55.397 に答える
1

大丈夫だよ。与えられたものに従う必要があるため、コーディング標準は実際には含まれません。v8 担当者のみが提供.hし、boost 担当者のみが提供する.hpp場合、1 つのファイル セットを別の選択肢にコピーするか、独自のラッパー ヘッダー ファイルを提供する以外に選択肢はほとんどありません。

これらのオプションはどちらも、実際には疑わしい利点に対して欠点があるため、2 つの異なるファイル拡張子を含める必要があるという事実については気にしません。

于 2010-07-01T04:10:47.187 に答える