#include <iostream>
#include <string>
using FText = std::string;
using Print = std::cout;
int main()
{
FText Submission1 = 0;
FText Submission2 = 0;
FText Operator = "";
return 0;
}
如你所见,
using FText = std::string
为什么我不能替换std :: cout,最令人困惑的是我得到的错误“命名空间'std'中没有名字'cout'
可以任何亲编码器帮助我即时通讯我不喜欢打字所有如果std :: cout我设法改变字符串但cout不工作
即时通讯使用xcode
您可以使用using
或typedef
为类型引入新名称。
std::string
是一种类型,这两个是等价的:
using FText = std::string;
typedef std::string FText;
但正如编译器所说,std::cout
不是一种类型(它是一个变量)。
您可以使用引用为std::cout
引入新名称:
int main()
{
auto& Print = std::cout;
Print << "Hallo, Word!";
}
如果您不喜欢命名空间说明符,可以执行以下操作:
int main()
{
using std::cout;
cout<< "Hallo, Word!";
}
您可以创建一个新类,比如打印类,而不是覆盖<<插入操作符,而不是使用该类的对象进行打印。
class print{
public:
int a;
void operator<<(print &obj){
cout<<obj.a<<endl;
}
};
print obj;
obj.a =1;
obj<<obj;