有如下程序: class Base{ public: int data } class Derived1:public Base{} class Derived2:protected Base{} int main(){ Derived1 d1 Derived2 d2 d1. data=0 //① d2. data=0 //② return 0 } 下列关于程序编译结果的描述中,正确的是( )。 A) ①②皆无编译错误 B) ①有编译错误,②无编译错误 C) ①无编译错误,②有编译错误 D) ①②皆有编译错误