在C+中使用FAR*+;11
首先,我读到: A 从中我知道分段体系结构计算机中的在C+中使用FAR*+;11,c,c++11,C,C++11,首先,我读到: A 从中我知道分段体系结构计算机中的FAR指针是一个包含段选择器的指针,可以指向当前段之外的地址 B 从这一点我知道:'远远落后于16位的时候,堆内存被分段。近距离数据在规模和速度上受到限制,远距离数据允许更大但更昂贵 我得到了一个旧的C/C++代码来翻译成C++11,它大量使用short-FAR*。short-FAR*类型在VS2013中无法解析(使用C++11),因此我的问题是我是否应该替换short-FAR*数据类型[我知道答案可能是“肯定的”],如果是这样的话,用什么?如
FAR
指针是一个包含段选择器的指针,可以指向当前段之外的地址
B
从这一点我知道:'远远落后于16位的时候,堆内存被分段。近距离数据在规模和速度上受到限制,远距离数据允许更大但更昂贵
我得到了一个旧的C/C++代码来翻译成C++11,它大量使用
short-FAR*
。short-FAR*
类型在VS2013中无法解析(使用C++11),因此我的问题是我是否应该替换short-FAR*
数据类型[我知道答案可能是“肯定的”],如果是这样的话,用什么?如果没有,我怎样才能解决这个问题呢?只需将它们全部去掉,让编译器来处理即可
如果您希望从代码中删除它们,使用上下文感知IDE(任何像样的IDE都应该这样做),您可以:
#定义FAR/*nothing*/
李>
#定义
把它们全部去掉,让编译器来处理 如果您希望从代码中删除它们,使用上下文感知IDE(任何像样的IDE都应该这样做),您可以:
#定义FAR/*nothing*/
李>
#定义
是的,您应该删除它,因为我认为您不再使用分段内存体系结构。在任何现代系统上,表示为
short FAR*
的概念现在表示为short*
,即只是一个简单的“指向short
”类型的指针
不要乱搞预处理器,那只会增加混乱
只需使用任何功能强大的文本编辑系统(IDE或文本编辑器是不错的第一手选择)即可删除文本
请记住使用全大写搜索字符串
FAR
,并使用区分大小写的搜索,并启用任何“仅全字匹配”标志以减少错误匹配的风险。对空字符串进行替换,有效地从代码中编辑出FAR
单词。是的,我认为您应该删除它,因为您不再使用分段内存体系结构。在任何现代系统上,表示为short FAR*
的概念现在表示为short*
,即只是一个简单的“指向short
”类型的指针
不要乱搞预处理器,那只会增加混乱
只需使用任何功能强大的文本编辑系统(IDE或文本编辑器是不错的第一手选择)即可删除文本
请记住使用全大写搜索字符串
FAR
,并使用区分大小写的搜索,并启用任何“仅全字匹配”标志以减少错误匹配的风险。对空字符串进行替换,有效地从代码中编辑出FAR
单词。用#define FAR/*nothing*/
并让编译器处理这些东西怎么样?我在自己的问题中引用了这个确切的问题,并说它对我没有帮助@昆汀我很受诱惑,因为有太多的参考文献。然而,这并不适合我,我希望通过删除这些可能的冗余类型,使代码“干净”…第二个链接中被接受的答案基本上回答了这个问题。你按照@Quentin说的做,或者你只是全局搜索/用零替换它们。@RetiredInja no“它们通常会扩展为零”是最好的答案,而不是回答我上面的问题。。。我很高兴接受您的回答,即“将short FAR*
替换为short*
”…用#define FAR/*nothing*/
并让编译器处理这些东西怎么样?我在自己的问题中引用了这个确切的问题,并说它对我没有帮助@昆汀我很受诱惑,因为有太多的参考文献。然而,这并不适合我,我希望通过删除这些可能的冗余类型,使代码“干净”…第二个链接中被接受的答案基本上回答了这个问题。你按照@Quentin说的做,或者你只是全局搜索/用零替换它们。@RetiredInja no“它们通常会扩展为零”是最好的答案,而不是回答我上面的问题。。。我很高兴接受您的回答,其中说明“将short-FAR*
替换为short*
”……那么您是说我的short-FAR*
在使用您建议的选项2时变成short*
。@Killercam(已编辑)这是一个待办事项列表,而不是三方选择。您只需注册一个标识符,这样IDE就可以定位所有的事件,然后一次替换它们。所以所有的short FAR*thing
都会变成short*thing
。谢谢,我很感激(我不应该把它称为“选项”!)。但是对于待办事项列表,当“用空标识符替换FAR
时,是否将short FAR*
转换为short*
?是的,您希望从代码中完全删除所有出现的FAR
。@Killercam是的。(对于交错编辑,我很抱歉,在发布之前我会滚动手指7次!)那么,当使用您建议的选项2时,您是说我的short FAR*
变成short*
?@Killercam(已编辑)这是一个待办事项列表,而不是三方选择。您只需注册一个标识符,这样IDE就可以定位所有的事件,然后一次替换它们。所以所有的short FAR*thing
都会变成short*thing
。谢谢,我很感激(我不应该把它称为“选项”!)。但是在待办事项列表中,当“用空标识符替换FAR
”时,是否将short FAR*
转换为short*
?是,