提问者:小点点

旧C++版本中struct和class的区别


在C++中,classstruct是否总是只有默认访问说明符不同? 或者在某些早期版本中,C++struct更像Cstruct


共2个答案

匿名用户

差不多一直都是。

早在标准化之前,实际上从80年代的第一次修订草案开始,就一直是这样。

令人沮丧的是,Stroupstrup的《A History of C++》并没有讨论这个问题,但是使用struct关键字定义的称为“类”的类型早在《C++编程语言参考手册》中就可以找到,该手册是“C with类”研究阶段之后的第一个规范,因此实际上是第一个标准前的C++修订版:

类,包含各种类型的对象序列,用于操作这些对象的一组函数,以及对访问这些对象和函数的一组限制;

无出入限制的类结构

这被称为“E版”,于1984年11月发布。

在1989年的2.0版中,这已经被放宽为今天的规则:

没有默认访问限制的类结构

作为时间上的参考,我们现在所说的“C++”的第一个版本是在1998年标准化的。

匿名用户

按照标准是的,在实践中我也听说过编译器尝试(或者仍然尝试?) 通过区分不同优化路径的优先级,在内部对它们进行不同的处理。

相关问题


MySQL Query : SELECT * FROM v9_ask_question WHERE 1=1 AND question regexp '(旧|c++|版本|中|struct|class|区别)' ORDER BY qid DESC LIMIT 20
MySQL Error : Got error 'repetition-operator operand invalid' from regexp
MySQL Errno : 1139
Message : Got error 'repetition-operator operand invalid' from regexp
Need Help?