#include"MyString.h" #include<iostream> MyString::MyString()//default constructor { length=0; data=NULL; cout<<"Default called by right none is called"<<endl; system("pause"); } MyString::MyString(char *source)//cstyle string parameter { int counter=0; //we implement count without using getlen for(int i=0;(source[i])!='\0';i++)//assume their char string is terminated by null { counter++; } length=counter; cout<<"THE LENGTH of "<<source<<" is "<<counter<<endl; system("pause"); data = new char[length]; } void MyString::print(ostream a)//what to put in besides ostream { a<<data; } the above is in my implementation file
This is in my main file
int main() { MyString s1("abcd");// constructor with cstyle style array s1.print(cout); system("pause"); return 0; } Why cant this work? Im getting this error
error C2248: 'std::basic_ios<_Elem,_Traits>::basic_ios' : cannot access private member declared in class 'std::basic_ios<_Elem,_Traits>'
Million Thanks! ERROR FIXED!!
operator<<rather than half coding in C++ and half in C :-)