visibility17.c
来自「this is a gcc file, you can download it 」· C语言 代码 · 共 67 行
C
67 行
// Build don't link: // GROUPS passed visibility// visibility file// From: Sandeep Shroff <ss@caere.com>// Date: Thu, 05 Aug 1993 17:23:20 -0700// Subject: Access to private constructor.// Message-ID: <9308060023.AA10283@neptune.caere.com>#include <iostream>#include <cstring>class Base{public: char* getName() {return name_;}private: Base(); Base(char* str); char* name_;};class Derived : public Base{public: Derived(int n, char* str); Derived(int n); int getNum() {return num_;}private: int num_;};Base::Base(){ // ERROR - private name_ = std::strcpy(new char[std::strlen(" ") + 1], " ");}Base::Base(char* str){ // ERROR - private if(str != NULL) name_ = std::strcpy(new char[std::strlen(str) + 1], str);}Derived::Derived(int n, char* str) : Base(str){// ERROR - .* num_ = n;}Derived::Derived(int n) : Base(){// ERROR - .* num_ = n;}int main(){ // Derived* d = new Derived(10, "test"); Derived* d = new Derived(10); std::cerr << d->getNum() << "\t" << d->getName() << std::endl;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?