小编Who*_*ian的帖子

了解Visual C++控制台项目中的_tmain

在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++那样.

c++ visual-c++

11
推荐指数
1
解决办法
1万
查看次数

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内部的全局字符串而不仅仅是本地字符串?

c++ namespaces global local object

11
推荐指数
1
解决办法
5205
查看次数

我在Xcode中遇到了一些C++ 11的问题

我是使用Xcode for C++的Mac OS X Lion用户,似乎没有可用于Xcode的更新.我似乎无法编译C++ 11独占代码,但无论出于何种原因,我认为Apple已经实现了C++ 11.是的,我确实支持Command Line Tools.

然后,那可能只是我.如果是这样,是否有任何类型的IDE支持C++ 11或任何升级方式?

c++ xcode osx-lion c++11

5
推荐指数
1
解决办法
9364
查看次数

Objective C Hello World错误

许多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.我选择了新项目 - >命令行工具 - >基础.这是我使用的源代码.

objective-c

2
推荐指数
1
解决办法
394
查看次数

访问Objective C中的公共字段

我试过以下示例代码:

    #import "Foundation/Foundation.h"

    @interface example
    {
        @public NSString* name;
    }
    @end

    @implementation example @end

    int main()
    {
        example* me;
        me->name = @"World";
    }

看来我的代码在这一点上讨厌我.我确实理解将一个字段公开是多么糟糕的想法,但我不确定为什么我在main()的最后一行收到错误.

field public objective-c

2
推荐指数
1
解决办法
1393
查看次数

C++多重继承

请不要在这里对这段代码中真正奇怪的工人层级提出质疑,我不知道为什么有人会想要这样的东西,但我决定给自己一个多重继承的练习,只是为了确保我完全理解它.所以这是结果.

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++ inheritance multiple-inheritance diamond-problem

1
推荐指数
1
解决办法
1847
查看次数