首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >法律功能参数

法律功能参数
EN

Stack Overflow用户
提问于 2015-07-31 22:02:50
回答 2查看 151关注 0票数 3

在使用C++时,我开始想知道像sizeof(int)这样的代码是如何工作的。我意识到sizeof是一个操作符,不是一个函数,但它仍然让我好奇.类似于myFunc(double)的代码合法吗?您能将纯类型的东西(如intMyClass )传递给函数吗?诚然,我看不出有多少应用程序,但我只是想知道。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-31 22:10:09

操作符喜欢sizeof,因为语言说他们这样做。

并不是所有的东西都是一个像函数一样的构造,可以重载或重新创建自己。您不能让您自己的操作符取一个类型名,就像您不能创建自己的基本类型或声明语法一样。

您不能在您的sizeof程序中重写C++并在那里使用它(尽管编译器中的底层实现通常是用C++编写的!)不过,这是在另一个抽象层)。

这里没有魔法,只有生活的事实。

票数 2
EN

Stack Overflow用户

发布于 2015-07-31 22:03:39

不,不能。参数是表达,而在C++中,类型不是表达式。

模板用于“类型参数”,但它们仅在编译时使用。(见上文@Banex和@clcto。)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31755862

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档