【发布时间】:2012-10-14 13:08:32
【问题描述】:
假设我有一个包含两个函数的 C++ 类
class MyClass
{
bool Foo(int val);
bool Foo(string val);
}
能不能像这样使用三元运算符
MyClassInstance->Foo(booleanValue?24:"a string");
并根据booleanValue的值调用不同的MyClass函数?
【问题讨论】:
-
你试过编译运行看看会发生什么吗?
-
这甚至不能编译。编译器会抱怨三元运算符的不同类型。
-
我不明白这里的赞成票。当然,这是一个有趣的实验,但如果 OP 只尝试过,这个问题很容易避免。 OP 根本没有提供任何研究信息。
-
我来自 PHP 背景,我立即得到 3 票反对。该死的有些语言很顽固,不是吗?
-
@Default 我应该以不同的方式表达我的问题:我的代码无法编译,有没有办法让它编译,或者这种表示法是否被禁止?下次我会更小心的……
标签: c++ ternary-operator function-signature