为什么我的 C++ 代码不能显示 cout 字符串
why cant my c++ code show cout string
这是我的主要.cpp
#include <iostream>
using namespace std;
#include "test.h"
void main()
{
Solution aa;
aa.aaa();
cin.get();
}
这是我的测试。
#pragma once
class Solution {
public:
void aaa() {};
};
这是我的考验.cpp
#include <iostream>
using namespace std;
class Solution {
public:
void aaa() {
cout << "aaaaa" << endl;
};
};
当我运行 C++ 代码时,它什么也没显示。谁能告诉我为什么?
您的test.h
声明并定义了一个Solution
类,并使用一个完全不执行任何操作的aaa()
类方法。
void aaa() {};
看,aaa()
方法不执行任何操作。
你的main()
叫这个方法,它绝对什么都不做。
最终结果:正如预期的那样,什么也没发生。
您还碰巧有一个test.cpp
碰巧声明并定义了自己的同名类。至少,这是未定义的行为,我会指责并嘲笑任何C++编译器+链接器,这些编译器认为将main.cpp
和test.cpp
链接在一起没有错。
在test.h中:
void aaa() {};
请注意,您在 () 之后放置了空括号,而不仅仅是分号。如果要编写函数声明,只需编写函数名称和参数,而不编写括号。现在编译器认为你想编写一个什么都不做的函数。(我很惊讶这没有导致链接错误)
您的test.h
和test.cpp
文件实现不正确。它们应该看起来更像这样:
测试.h
#pragma once
class Solution {
public:
void aaa();
};
测试.cpp
#include "test.h"
#include <iostream>
using namespace std;
void Solution::aaa() {
cout << "aaaaa" << endl;
}
相关文章:
- 如何在C++中用std::cout正确显示带十六进制的字符串文本
- 为什么在C的循环中使用printf的Rust代码不显示输出,而在C++的循环中显示std::cout
- 为什么我的 cout 在输出中没有显示字符串?
- 为什么strlen(s)与s的大小不同,为什么cout-char显示的是字符而不是数字
- 使用 CIN COUT 显示垃圾值的文件对象?
- 'cout'将整数显示为十六进制
- 如何使用 cout 显示类中类的值?
- 函数不返回值,但 cout 显示它
- C 未显示COUT信息
- printf 整数显示超过 C++ cout
- 为什么当我使用 cout 显示输出时,必须将按位运算符(例如 &,|,等)括在括号中?
- Jupyter笔记本未显示C 输出(COUT)
- 为什么我的 C++ 代码不能显示 cout 字符串
- 将字符串添加到2D数组并显示COUT消息(没有错误消息?)的错误
- C++ - 为什么我的cout代码显示小数不一致
- 为什么 cout 不显示字符串变量 rnd
- 返回前的 cout 显示的数字与主数字大不相同
- 当我调用std::abort()时,cout没有显示
- 函数调用不显示 cout
- c++显示cout中的letters的奇怪结果