【发布时间】:2011-07-19 18:36:27
【问题描述】:
首先,我想通知您,我已经明确搜索了有关我以下问题的答案,但我是 C++ 的新手。
我来自 C# 和 Java 的奢华生活,现在正在尝试学习一两点关于 c++ 的知识
问题是关于实例化的。
我使用 code::block 作为我选择的 IDE。
目前我只是在玩 C# 中的内容(我实际上非常熟悉并编写了几个应用程序)是
2 类
包含 main 和 Person 的类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Models.Person;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Person person = new Person();
Console.WriteLine(person.getName());
}
}
}
还有人物类:
namespace ConsoleApplication1
{
public class Person{
private string name = "Bob";
public string getName(){
return name;
}
}
}
(不要介意错误或正确的书面语法,它只是为了模拟我想要实现的目标)
我想在 C++ 中实现同样的目标
我查了一下,在一定程度上了解了标题,并掌握了一些语法。这就是我现在所拥有的。
main.cpp
#include <iostream>
using namespace std;
int main()
{
Person person;
cout << person->getName() << endl;
}
人.h
#ifndef PERSON_H
#define PERSON_H
#include <string>
class Person
{
public:
Person();
virtual ~Person();
std::string getName();
protected:
private:
};
#endif // PERSON_H
播放器.cpp
#include "Person.h"
#include <string>
using std::string;
Person::Person()
{
//ctor
}
Person::~Person()
{
}
string Person::getName()
{
return name;
}
考虑到上面的代码,我有多个问题。
我从来没有找到一个好的资源来告诉我是否应该使用Person person; 或Person person = new Person(); 进行实例化
这两个中的哪一个是我应该使用的?
另一个我很想问的问题是,我是在头文件还是在类文件中定义类成员?
目前我收到以下错误:
'person' 未在范围内声明,应为 ';'在人之前
我并不是一定要你解决我的错误,我会在收到我的问题的答案后解决这个问题。
【问题讨论】:
-
“我刚从 C# 和 Java 的奢华生活中走出来,现在想学习一两点关于 c++ 的知识”确保你有 a good introductory C++ book。 C++与 Java 或 C# 几乎没有共同之处。
-
在阅读 [那本很好的 C++ 入门书籍] 后,还可以考虑仔细阅读 C++ FAQ,因为它有很多有用的信息。
-
感谢您提供的链接 ^^ 我将在 C++ 书籍上明确遵循您的建议。它是一种非常有趣的语言。