我有一个要通过函数打印的字符串。我正在使用turbo-c编译器。
使用程序方法时,我可以通过以下代码完成:
#include <iostream.h>
#include <conio.h>
class name{
public: void strr(char name[]);
};
void main(){
char name1[10];
cout << "Enter name";
cin >> name1;
strr(name1);
getch();
}
void name::strr(char name[]){
cout << name;
}
但是使用oop方法我无法打印字符串。我的代码是:
Function 'strr' hould have a prototype
使用oop方法我收到错误{{1}}。
答案 0 :(得分:3)
由于您的函数是在类中定义的,因此您需要name
类的对象/实例来调用它:
name obj;
cin >> name1;
obj.strr(name1);
或者,如果将函数声明为static,则可以在没有类实例的情况下调用它,因为该函数是类函数:
class name{
public: static void strr(char name[]) {cout << name << endl;}
};
...
cin >> name1
name::strr(name1);
答案 1 :(得分:-1)
试试这个 name :: void strr(char name []) {}