【问题标题】:C++ Console::WriteLine()-like method without .net framework没有 .net 框架的 C++ Console::WriteLine()-like 方法
【发布时间】:2017-05-29 10:03:51
【问题描述】:

是否可以在没有 .net 框架的情况下在 C++ 中编写类似 Console::WriteLine() 的方法? 我想做的是这样的:

Console::WriteLine("Hello! " + "This PC is " + Convert::ToString(3) + " years old!");

.net framework 版本貌似可以在msdn.com上做char[] + char[]?


编辑:有什么我可以告诉 GCC 的吗?也许将字符串类用于“”声明而不是字符数组?


EDIT2:我正在尝试编写自己的函数。所以不,我不会使用cout


EDIT3:唯一真正的问题是是否可以做到"Hello! " + "This PC is " + string("3")。我知道string("3") + " hello " + "PC!" 有效,因为字符串类的+ Operator 会将string("3") 添加到" hello " 并将其转换为string,然后将string("3 hello ") 添加到"PC!" 并将其转换为@ 987654333@.

【问题讨论】:

  • @Someprogrammerdude 我不希望 C++ 像 C# 一样工作。我只是想尝试用 C++ 编写一些像 C# 函数一样工作的函数。尽管如此,.net 框架中有一个 C++ 版本的 Console::WriteLine()(参见 msdn-link)。
  • @MathiLpHD 该“版本”适用于 C++/CLI,不是本机 C++。
  • @AlgirdasPreidžius 我知道,这就是为什么我问是否可以在没有 .net 框架的情况下编写它 => 没有 C++/CLI
  • 在 C++ 中,您通常使用 std::ostringstream 来格式化字符串。可以在some_function((std::ostringstream() << "Hello" << 3 << "world").str()) 中内联完成

标签: c# c++ .net


【解决方案1】:

是的,使用 iostream 标头中的 cout 流对象:

std::cout << "Hello! " << "This PC is " << getPcAge() << " years old!"<< std::endl;

【讨论】:

    猜你喜欢
    • 2013-05-09
    • 2022-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-04
    • 1970-01-01
    • 1970-01-01
    • 2012-03-28
    相关资源
    最近更新 更多