C++ &引用;C++;编程语言4ed;[Stroustrup 2013]混凝土等级:;如果表示形式发生重大更改…用户必须重新编译“0”;?

C++ &引用;C++;编程语言4ed;[Stroustrup 2013]混凝土等级:;如果表示形式发生重大更改…用户必须重新编译“0”;?,c++,C++,B.Stroustrup写了关于具体类的文章: 表示可以是私有的…并且只能通过成员函数访问,但它是存在的因此,如果表示形式发生重大变化,用户必须重新编译。这是让具体类型的行为与内置类型完全相同的代价 我对此有点困惑,因为我不明白具体类的表示在运行时是如何变化的。我可以问这个问题的另一种方式是:如何在编译后“无意义地”更改具体类的表示形式?这不是在运行时发生的事情,而是源代码的演变 这意味着,如果您以显著方式更改类的源代码,那么您将失去二进制兼容性,因此使用该类的现有代码也需要重新编译。这不是在运

B.Stroustrup写了关于具体类的文章:

表示可以是私有的…并且只能通过成员函数访问,但它是存在的因此,如果表示形式发生重大变化,用户必须重新编译。这是让具体类型的行为与内置类型完全相同的代价


我对此有点困惑,因为我不明白具体类的表示在运行时是如何变化的。我可以问这个问题的另一种方式是:如何在编译后“无意义地”更改具体类的表示形式?

这不是在运行时发生的事情,而是源代码的演变


这意味着,如果您以显著方式更改类的源代码,那么您将失去二进制兼容性,因此使用该类的现有代码也需要重新编译。

这不是在运行时发生的事情,而是源代码的演变


这意味着,如果您以显著方式更改类的源代码,那么您将失去二进制兼容性,因此使用该类的现有代码也需要重新编译。

例如,如果您通过将私有变量移动到公共变量来更改类声明,则这些变量可以在不使用成员函数的情况下访问。在这种情况下,您需要重新编译代码。引用的段落并非试图解释“编译后”运行时场景,而是用于“编译后”类重新设计场景。

例如,如果您通过将私有变量移动到公共来更改类声明,则这些变量可以在不使用成员函数的情况下访问。在这种情况下,您需要重新编译代码。引用的段落并不是试图解释“编译后”运行时场景,而是针对“编译后”类重新设计场景