標準によると、std::vector<bool>
にはメンバー機能がありませんdata()
。ただし、次のスニペットは、のlibstdC++と最新のGCCでコンパイル罰金:我々は結果を使用しようとするとlibstdC++のstd :: vector <bool> :: dataは何をしますか?
#include <vector>
int main() {
std::vector<bool> v;
v.data();
}
、それは戻り値の型がvoid
で判明します。
これはgccの拡張機能ですか、バグですか?
前者が真の場合はどうなりますか?
私は詐欺に同意しません。私は標準が問題の関数を定義していないことを知っています、私は特定の実装の動作について尋ねています。 –
ソースコードを読んだことがありますか? GCCはオープンソースです。 –
@LightnessRacesinOrbit私は認めなかった。それが助けになったように見えます。 :) –