在类中使用string类的问题。我定义的构造函数,想把字符串赋给string对象,却实现不了。

问题描述

在类中使用string类的问题。我定义的构造函数,想把字符串赋给string对象,却实现不了。

//12.2.ano.h
#ifndef STRING2_H_
#define STRING2_H_

#include
#include

using std::string;
using std::cout;
using std::cin;
using std::endl;

class String
{
private :
string str;
public :
String();
String(const string cs);
String(const String & s);
~String();
String & operator=(const String & s);
String & operator=(const string cs);
friend std::ostream & operator<<(std::ostream & os, String & s);
};

#endif

//string.cpp 实现文件
#include "12.2.h"
#include

String::String()
{

}

String::String(const string cs)
{
str = cs;
}

String::String(const String & s)
{
str = s.str;
}

String::~String()
{

}

String & String::operator=(const string cs)
{
str = cs;
return *this;
}

String & String::operator=(const String & s)
{
str = s.str;
return *this;
}

std::ostream & operator<<(std::ostream & os, String & s)
{
os << s.str;
return os;
}

//main.cpp 主函数
#include
#include "12.2.ano.h"
int main()
{
String a1 = "I know";
String a2 = (string)"I know";
cout << a1;
return 0;
}

解决方案

string类的构造函数实现

解决方案二:

#include
using std::string;
using std::cout;
using std::cin;
using std::endl;
class String
{
private :
string str;
public :
String();
String(const string cs);
String(const String & s);
~String();

时间: 2024-09-17 07:14:19

在类中使用string类的问题。我定义的构造函数,想把字符串赋给string对象,却实现不了。的相关文章

java-怎么抛出自定义异常类中内部异常类?

问题描述 怎么抛出自定义异常类中内部异常类? 问题在代码中已标出,请大婶解疑,能不能这样做,这样做能不能实现 import javax.swing.JOptionPane; public class PasswdException extends Exception { PasswdException(int i) { if (i < 6) { System.out.println("密码不能小于六位"); } if (i > 6) { System.out.println

在MFC单文档程序中,如何在子对话框类中访问视类中的一个变量?

问题描述 在MFC单文档程序中,如何在子对话框类中访问视类中的一个变量? 如题,小弟最近遇到一个问题,新建一个单文档程序,并在其中引入对话框资源.我想在视类的OnDraw()函数中通过响应视类的一个变量的变化来改变视类窗口中图形的状态,而该视类变量的变化是由对话框中的一个控件控制的,这个控件是由旋钮控件和编辑控件捆绑而成的.在网上看了一些资料,试了其中的一些方法,都没能成功.论坛中高手众多,想请热心的高手们给个解决方法,在此先谢过了!能给个相似的例子的更好! 解决方案 要么你把那个变量定义成静态

在C++中 怎么在派生类中使用基类中的成员变量 例如如下代码 怎样才能使其跑起来

问题描述 在C++中 怎么在派生类中使用基类中的成员变量 例如如下代码 怎样才能使其跑起来 #include using namespace std; class love{ public: char you() { int i=87, j=74 ,k=89; char a=char(i),b=char(j),c=char(k); return 0; } }; class Me:private love{ public: Me():l(a),u(b),n(c){} char const l,u,

C# 类中隐藏基类方法和Partial

原文:C# 类中隐藏基类方法和Partial 今天对于.NET开发人员来说最开心的事情莫过于微软搞开源了,这觉得是给搞.NET开发的长脸.虽然我是一个初学者,这无疑给我极大的学习动力.Fighting!!! 当一个类从父类继承了一个成员时,也就继承了它的执行代码,如果成员时虚拟的,我们可以用override重写这段执行代码.但无论他是否是虚拟的,都可以通过new 关键字来隐藏它.例如: public class BaseClass { public void DoSomething() { //

Android反射出一个类中的其他类对象并调用其对应方法

MainActivity如下: package cn.testreflect; import java.lang.reflect.Field; import java.lang.reflect.Method; import android.os.Bundle; import android.app.Activity; /** * Demo描述: * 在一个类中有另外一个类的对象 * 比如此处的Worker类中有一个Student类的对象: * private Student mStudent;

managed类中使用unmanaged类的问题

问题描述 #pragmaonce#include"WinCCControlCenter.h"#include"WinCCGraphicsDesigner.h"#pragmamanagednamespaceCLIDataTransfer{usingnamespaceSystem;usingnamespaceSystem::ComponentModel;usingnamespaceSystem::Collections;usingnamespaceSystem::Win

在c# 中 如何在A类中 操作B类中的属性 或方法?

问题描述 有公共类A和公共类B.类A有属性StringName和intAge.类B有方法SetAelement().可否通过B类的方法操作A类中的属性.如果可以,如何实现? 解决方案 解决方案二:classA{StringName;intAge;}classB{SetAelement(){Aa=newA();a.Name="zzy";a.Age=15;}}解决方案三:classB{SetAelement(){A.Name="zzz";A.Age=15;}}解决方案四

String类中的成员变量offset可以直接访问吗?

问题描述 String类中的成员变量offset可以直接访问吗? 第一次提问~今天在看String的字符串匹配实现,看到里面有个private的成员offset. /** The offset is the first index of the storage that is used. */ private final int offset; 完了之后再String的一个constructor中看到了这种访问 /** * Allocates a new string that contains

如果子类的构造方法中既没有显示调用基类构造方法,而基类中又没有无参数的构造方法,则编译出错。

问题描述 如果子类的构造方法中既没有显示调用基类构造方法,而基类中又没有无参数的构造方法,则编译出错. class Person { private String name; private int age; public void setName(String name) { this.name = name; } public void setAge(int age) { this.age = age; } public String getName(){ return name; } pu