コードです:手段:このベースとは何ですか?次のように標準C++キーワード
#include <iostream>
struct A {
virtual void foo() { std::cout << "hello world!" << std::endl; }
};
struct B : public A {
void foo() override { base:foo(); }
};
void main() {
A* p = new B();
p->foo();
delete p;
}
「ベース」とは何ですか?それはC++の標準的なキーワードですか?
プラットフォーム:win10 + vs2015 update3;
プロジェクトタイプ:win32 console project;
コードが示されている場合、 'base:'は 'goto'文で参照できるラベルになります。しかし、それは無意味なラベルなので、実際のコードを表示していないことが分かります。 – Brian
'base:'は単なるラベルです。ちょうど 'xyz:foo();'と書くこともできます。書かれているように、 'B :: foo'は無限再帰に入ります。もしあなたが望んでいれば、 'A :: foo'を呼び出すことはありません。 –
あなたの 'base:'はすべて私たちのものです。すべての 'z-> ig()'を取り除く.'for(; GREAT_JUSTICE;){Move(z-> ig()); } '。 –