我确信之前已经提出这个问题,并且会被关闭并标记为重复但我发现它时遇到了问题......
例如,在llvm项目中的<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Batching test</title>
<meta charset="utf-8">
<meta name="google-signin-client_id" content="<MyID>">
<meta name="google-signin-scope" content="https://www.googleapis.com/auth/analytics.readonly">
<!-- Load the JavaScript API client and Sign-in library. -->
<script src="https://apis.google.com/js/client:platform.js""></script>
<!--<script src="/batching/script.js"></script>-->
</head>
<body>
<h1>Hello Analytics Reporting API V4</h1>
<!-- The Sign-in button. This will run `queryReports()` on success. -->
<p class="g-signin2" data-onsuccess="batchExecution"></p>
<script>
var VIEW_ID = '3213999';
var sessionsM = 'ga:sessions';
var transactionsM = 'ga:transactions';
// Query the API and print the results to the page.
/*gapi.analytics.ready(function() {
console.log('hi');
});*/
var analyticsReportRequest = function queryReports(chooseMetric) {
gapi.client.request({
path: '/v4/reports:batchGet',
root: 'https://analyticsreporting.googleapis.com/',
method: 'POST',
body: {
reportRequests: [
{
viewId: VIEW_ID,
dateRanges: [
{
startDate: '7daysAgo',
endDate: 'today'
}
],
metrics: [
{
expression: choseMetric
}
]
}
]
}
}).then(displayResults, console.error.bind(console));
};
var report1 = analyticsReportRequest(sessionsM);
var report2 = analyticsReportRequest(transactionsM);
function batchExecution() {
var batch = gapi.client.newBatch();
batch.add(report1);
batch.add(report2);
}
function displayResults(response) {
var formattedJson = JSON.stringify(response.result, null, 2);
document.getElementById('query-output').value = formattedJson;
}
</script>
<!-- The API response will be printed here. -->
<textarea cols="80" rows="20" id="query-output"></textarea>
</body>
</html>
。将此后缀用于cpp文件有什么意义?
答案 0 :(得分:9)
扩展名与.h或.hpp不同。无论谁决定以这种方式命名文件,我都不在那里。除了惯例之外,没有特别的原因可以确定扩展。
正如Jonathan指出的那样,可能是将它与&#34;常规头文件区分开来&#34;可以在任何地方使用。
包含这些文件的上述评论可能是一个合理的解释:
// Include the platform-specific parts of this class.
#ifdef LLVM_ON_UNIX
#include "Unix/Signals.inc"
#endif
#ifdef LLVM_ON_WIN32
#include "Windows/Signals.inc"
#endif
这些包含特定于平台的部分,因此它不是&#34;头文件&#34;,它只是依赖于目标体系结构的代码的一部分,并且有人认为它是&#39最好有两个单独的文件,而不是在一个源文件中有一个巨大的#ifdef
。 [在我看来,一个合理的决定,因为我看到的Unix文件是几百行,包括更多内容,还有一些#if
]