linux编译mysql报无法将左值_'错误:无法将'std::ostream {aka std::basic_ostream
我用这个模板读了类似的问题。
我没有模板,但我有同样的错误。这是我第一次重载<
我有三个文件。主文件,.h文件和.cpp文件。 Team类使用了我实现的另一个类,但我不认为这个错误是由这个类引起的。我认为我错了超载<
这是我的.h文件:
#include "Calciatore.h"
#include
class Team{
list calciatori;
string nome;
int punti;
public:
Team();
Team(string, int);
Team(list, string, int);
void set_calciatori(list);
list get_calciatori();
void set_calciatore(Calciatore*, int);
Calciatore* get_calciatore(int);
void set_nome(string);
string get_nome() const;
void set_punti(int);
int get_punti() const;
void add_calciatore(Calciatore*);
bool operator
bool operator>(Team const&);
std::ostream& operator<
private:
void set_calciatori();
};这是我的.cpp文件:
#include "Team.h"
#include
#include
Team::Team(){
set_calciatori();
set_nome("");
set_punti(0);
}
Team::Team(string nome, int punti){
set_calciatori();
set_nome(nome);
set_punti(punti);
}
Team::Team(list calciatori, string nome, int punti){
set_calciatori(calciatori);
set_nome(nome);
set_punti(punti);
}
void Team::set_calciatori(list calciatori){
if(calciatori.size() < 11 || calciatori.size() > 25){
cout << "\nLa lista deve contenere un numero di calciatori compreso tra 11 e 25";
return;
}
this->calciatori = calciatori;
}
void Team::set_calciatori(){
for(int i = 0; i < 11; i++){
this->calciatori.push_back(new Calciatore());
}
}
list Team::get_calciatori(){
return this->calciatori;
}
void Team::set_calciatore(Calciatore* calciatore, int pos){
if(pos < 0 || pos > this->calciatori.size()){
cout << "\nImpossibile inserire l'oggetto nella posizione inserita";
return;
}
list::iterator it = calciatori.begin();
advance(it, pos); //Avanzo l'iteratore fino alla posizione pos
this->calciatori.insert(it, calciatore);
}
Calciatore* Team::get_calciatore(int pos){
if(pos < 0 || pos > this->calciatori.size()){
cout << "\nImpossibile restituire l'oggetto alla posizione inserita";
return NULL;
}
list::iterator it = calciatori.begin();
advance(it, pos);
return *it;
}
void Team::set_nome(string nome){
this->nome = nome;
}
string Team::get_nome() const{
return this->nome;
}
void Team::set_punti(int punti){
this->punti = punti;
}
int Team::get_punti() const{
return this->punti;
}
void Team::add_calciatore(Calciatore* calciatore){
if(calciatori.size() >= 25){
cout << "\nLa squadra è già al completo";
return;
}
calciatori.push_back(calciatore);
}
bool Team::operator
if( get_punti() == t.get_punti()){
return get_nome() < t.get_nome();
}
return get_punti() < t.get_punti();
}
bool Team::operator >(Team const &t){
if( get_punti() == t.get_punti()){
return get_nome() > t.get_nome();
}
return get_punti() > t.get_punti();
}
std::ostream& Team::operator<
out << "\nNome : \t" << get_nome() << " \tPunti : \t" << get_punti();
return out;
}这是主要的:
void set_Campionato(Team*[]);
void print_Campionato(Team*[]);
int main() {
Team* serieA[20];
set_Campionato(serieA);
sort(serieA, serieA+20);
print_Campionato(serieA);
return 0;
}
void set_Campionato(Team* serieA[]){
...
}
void print_Campionato(Team* serieA[]){
for(int i = 0; i < 20; i++){
cout << *serieA[i] << "\n"; //This is line wher appears errore
}
}我使用gcc 6.3.0。
对不起,我的英语,并感谢您的任何答案。
linux编译mysql报无法将左值_'错误:无法将'std::ostream {aka std::basic_ostream相关推荐
- Linux下MySQL报Table 'xxx' doesn't exist错误解决方法
今天将项目用docker打包放在centos环境中出现了一个奇葩的问题: 控制台总是报错,说我的表不存在,可是我通过select查询之后发现表存在啊. 经过一番查询才发现原因是: linux下mysq ...
- 字符数组赋值报“表达式必须是可修改的左值”的错误
在C/C++程序中,main函数可以传递了两个参数(int argc, char *argv[]), 后面那个是字符数组,当我们接收直接用字符数组接收参数时会报"表达式必须是可修改的左值&q ...
- Linux下MySql出现#1036 – Table ‘ ‘ is read only 错误解决方法
Linux下MySql出现#1036 – Table ' ' is read only 错误解决方法 参考文章: (1)Linux下MySql出现#1036 – Table ' ' is read o ...
- ubuntu qt编译mysql报错_[Linux]QT编译Mysql驱动(Mariadb驱动),解决qmake报错问题
编译环境 系统:Ubuntu18.04 QT版本:Qt 5.14.0 gcc版本:gcc version 7.5.0 qt官方编译驱动方式 在使用QT连接数据库时遇见的第一个错误就是QMYSQL dr ...
- linux编译驱动报错,Linux编译声卡驱动
关于Linux编译声卡驱动: 惠普笔记本刚买来时,安装Debian 5,通常会遇到两个问题.一个是无线网卡驱动没有安装,一个是"带上耳机可以听歌,但是喇叭无法发声". 对于前面一个 ...
- Linux编译x86架构内核出现_stack_chk_guard未定义错误
背景 android模拟器运行于virtualbox中,而virtualbox运行于x86架构的pc端,所以android及其Linux内核都编译成x86架构.当virtualbox的vt未开启的情况 ...
- linux编译curses报错,linux屏幕编程:curses库的使用
curses库是一组函数,可以用它来设置光标的位置和终端屏幕上显示的字符样式.curses库将终端屏幕看成是由字符单元组成的网格,每一个单元由(行.列)坐标对标示.坐标原点是屏幕的左上角,行坐标自上而 ...
- Linux环境下MySQL报Table ‘xxx‘doesn‘t exist错误解决方法
问题:程序报Table 'xxx' doesn't exist 的错误,但是查看数据库发现该表已经存在且字母也没有拼错.原因:Linux 上的mysql默认是区分大小写导致的. 解决:改动mysql的 ...
- Linux环境下MySQL报Table 'xxx' doesn't exist错误解决方法
问题:程序报Table 'xxx' doesn't exist 的错误,但是查看数据库发现该表已经存在且字母也没有拼错. 原因:Linux 上的mysql 默认是区分大小写导致的. 解决:改动mysq ...
最新文章
- 通过Matlab发送邮件要注意的问题
- swing查询输入框无值时出现null异常_如何优雅处理代码中 Null 值引起的 Bug?告别 Null 恐惧症!...
- 通用多表分页存储过程
- HDU - 3538 A sample Hamilton path(最短哈密顿路径+状压dp)
- workerman mysql_workerman/mysql
- 关于map的初级应用
- 用代码初始化APP的window
- 文件读入简单操作(C#)
- (官方win10PE使用)微软官方win10PE取出文件操作教学
- 【知识图谱】从六个方面解析知识图谱的价值和应用
- Unity3D游戏框架设计
- C++ 自定义String类
- 如何修改PPT文档的编辑版式
- 狗年拜年php源码,创意拜年祝福语狗年
- 推特CEO继任者曝光:带着老婆孩子睡公司,钢铁侠20年嫡系,现在掌舵挖洞公司...
- 推荐一个开源库(Calligraphy)将ttf字体库加入到项目中,轻松实现各种字体
- CSS3实现实时时间数字滚动
- 亚马逊云服务器使用密码登录
- 我叫mt4 服务器维护,我叫mt4服务器之间互通吗
- 商城开发之商品分类表的设计、使用、管理