[英]I'm getting the error: no suitable conversion function from std::basic_istream<char, std::char_traits<char>> to char exists
[英]C++ and Visual Studio error - no suitable conversion function from “std::basic_ostream<char, std::char_traits<char>>” to “int” exists
Visual Studio最近对我发疯了,当我所做的只是一个简单的提示时,Visual Studio就给了我该主题的错误...
码:
// Lang.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
int main{
cout << "hi";
}
int main{ cout << "hi"; }
由于可以使用{}
语法初始化C ++中的对象,因此您的编译器可能将此代码解释为试图创建一个名为main
的全局int
变量的尝试,该变量初始化为std::ostream::operator<<
,该成员该函数返回对std::ostream
本身的引用。
好像您已经写过:
double some_variable { cout << "hi" }
要么:
double some_variable { cout }
std::ostream
实际上是std::basic_ostream<char, std::char_traits<char>>
。 而且该类型与int
不兼容。
唯一奇怪的是为什么;
在"hi"
之后不会立即导致编译器停止尝试; 但是您没有说明正在使用哪个编译器版本和哪个选项。
无论如何,所有这些事实最终都会导致错误消息:
no suitable conversion function from “std::basic_ostream<char, std::char_traits<char>>” to “int” exists
并在:
另外,突出显示“ hi”后的分号,并说“ expected a}”
解决方案:使main
功能:
int main() {
cout << "hi";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.