在Visual C++ 2008 Express中,当我创建一个新的控制台项目时,我得到以下程序:
//Explodey.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
int _tmain(int argc,_TCHAR* argv[])
{
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我有几个问题:
为什么主函数_tmain而不是main?
我认为该argv
参数应该是char* argv[]
代替_TCHAR
.
什么stdafx.h
?
这并不像我习惯的C++那样.
#include <iostream>
#include <string>
using namespace std;
string a;
namespace myNamespace
{
string a;
void output()
{
cout << a << endl;
}
}
int main()
{
a = "Namespaces, meh.";
myNamespace::a = "Namespaces are great!";
myNamespace::output();
}
Run Code Online (Sandbox Code Playgroud)
结果是"命名空间很棒!".那么有没有办法访问命名空间myNamespace内部的全局字符串而不仅仅是本地字符串?
我是使用Xcode for C++的Mac OS X Lion用户,似乎没有可用于Xcode的更新.我似乎无法编译C++ 11独占代码,但无论出于何种原因,我认为Apple已经实现了C++ 11.是的,我确实支持Command Line Tools.
然后,那可能只是我.如果是这样,是否有任何类型的IDE支持C++ 11或任何升级方式?
许多Objective-C教程似乎使用以下程序:
#import "Foundation/Foundation.h"
int main ()
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSLog(@"Hello world!");
[pool drain];
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我确实拿出了关于游泳池的所有东西,而且工作正常.但这给了我一个错误信息.'NSAutoreleasePool'不可用:在自动参考计数模式下不可用.也许我做错了什么?
我正在使用Xcode 4.3.2.我选择了新项目 - >命令行工具 - >基础.这是我使用的源代码.
我试过以下示例代码:
#import "Foundation/Foundation.h" @interface example { @public NSString* name; } @end @implementation example @end int main() { example* me; me->name = @"World"; }
看来我的代码在这一点上讨厌我.我确实理解将一个字段公开是多么糟糕的想法,但我不确定为什么我在main()的最后一行收到错误.
请不要在这里对这段代码中真正奇怪的工人层级提出质疑,我不知道为什么有人会想要这样的东西,但我决定给自己一个多重继承的练习,只是为了确保我完全理解它.所以这是结果.
using namespace std;
class Employee
{
protected:
string name;
public:
string getname()
{
return name;
}
void setname(string name2)
{
name = name2;
}
Employee(string name2)
{
name = name2;
}
Employee(){}
};
class Manager : public Employee
{
public:
string getname()
{
return ("Manager" + name);
}
Manager(string name2) : Employee(name2){}
Manager() : Employee(){}
};
class Supervisor : public Manager,public Employee
{
public:
Supervisor(string name2) : Manager(name2) , Employee(name2){}
Supervisor() : Manager() , Employee(){}
string getname()
{
return …
Run Code Online (Sandbox Code Playgroud) c++ ×4
objective-c ×2
c++11 ×1
field ×1
global ×1
inheritance ×1
local ×1
namespaces ×1
object ×1
osx-lion ×1
public ×1
visual-c++ ×1
xcode ×1