java - C++ 中的 System.out.println 函数语法

标签 java c++ println

我想在 C++ 中使用 cout 创建一个与 java 中的 println 函数相同的函数。这意味着调用应该是这样的:

int a=5
println("A string" + a);

变量a应该是任何基本类型。 在这种情况下我应该有什么样的参数,它是如何工作的?

谢谢

最佳答案

正如 larsmans 已经指出的,java 在运算符 + 上有重载。所以你可以用整数连接字符串。这在 C++ 中也是可能的,但并非对所有类型都是开箱即用的。

您可以使用这样的模板化函数。

#include <iostream>
using namespace std;

template <typename T>
void printer(T t) 
{ 
    cout << t << endl;
}

template <typename T, typename ...U>
void printer(T t, U ...u)
{
  cout << t;
  printer(u...);
}


int main()
{
  int a=5;
  printer("A string ", a);
  return 0;
}

但我建议看一下 boost::format .我想这个库会做你想做的事。

关于java - C++ 中的 System.out.println 函数语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16084379/

相关文章:

string - Arduino如何打印unsigned long long数据

java - 获取位置仅获取UI线程上的位置(GPS位置)

java - 通过堆叠 if 语句进行优化的可能性?

java - 应用程序中的选项卡栏图标与选项卡文本重叠

c++ - 干净地关闭 ATL 应用程序

java - while 循环和 printwriter 只向文件写入一行

java - 使用 .class 文件而不是 jar 将 Java 类导入 Jython

c++ - 连 catch 体顶点 OpenGL

c++ - 错误 MSB6006 : "cmd.exe" exited with code 3

java - 是否可以打印用户可以编辑的文本(对于控制台程序)?