标签: namespaces

为什么我不能使用双冒号在命名空间中转发声明一个类?

class Namespace::Class;
Run Code Online (Sandbox Code Playgroud)

我为什么要这样做?:

namespace Namespace {
    class Class;
}
Run Code Online (Sandbox Code Playgroud)

使用VC++ 8.0,编译器会发出:

错误C2653:'Namespace':不是类或命名空间名称

我假设这里的问题是编译器无法判断Namespace是类还是命名空间?但是为什么这很重要,因为它只是一个前瞻性声明?

是否有另一种方法来转发声明在某个命名空间中定义的类?上面的语法感觉就像我"重新打开"命名空间并扩展其定义.如果Class没有实际定义Namespace怎么办?这会在某个时候导致错误吗?

c++ namespaces

161
推荐指数
4
解决办法
8万
查看次数

PHP(5.3+)中的\(反斜杠)有什么作用?

\在PHP中做什么?

例如,CSRF4PHP\FALSE,\session_id\Exception:

public function __construct($timeout=300, $acceptGet=\FALSE){
    $this->timeout = $timeout;
    if (\session_id()) {
        $this->acceptGet = (bool) $acceptGet;
    } else {
        throw new \Exception('Could not find session id', 1);
    }
}
Run Code Online (Sandbox Code Playgroud)

php namespaces opcode opcache

150
推荐指数
4
解决办法
5万
查看次数

在C++中,什么是"命名空间别名"?

什么是C++中的"命名空间别名"?怎么用?

c++ namespaces

146
推荐指数
2
解决办法
5万
查看次数

带有std :: string的C++ printf?

我的理解是它stringstd命名空间的成员,为什么会出现以下情况呢?

#include <iostream>

int main()
{
    using namespace std;

    string myString = "Press ENTER to quit program!";
    cout << "Come up and C++ me some time." << endl;
    printf("Follow this command: %s", myString);
    cin.get();

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

每次程序运行时,都会myString打印一个看似随机的3个字符的字符串,例如上面的输出.

c++ string printf namespaces std

144
推荐指数
4
解决办法
32万
查看次数

在类中声明枚举

在下面的代码片段中,Color枚举是在Car类中声明的,以便限制枚举的范围并尽量不"污染"全局命名空间.

class Car
{
public:

   enum Color
   {
      RED,
      BLUE,
      WHITE
   };

   void SetColor( Car::Color color )
   {
      _color = color;
   }

   Car::Color GetColor() const
   {
      return _color;
   }

private:

   Car::Color _color;

};
Run Code Online (Sandbox Code Playgroud)

(1)这是限制Color枚举范围的好方法吗?或者,我应该在Car类之外声明它,但可能在它自己的命名空间或结构中声明它?我今天刚刚看到这篇文章,主张后者并讨论关于枚举的一些好点:http: //gamesfromwithin.com/stupid-c-tr​​icks-2-better-enums.

(2)在这个例子中,当类中工作时,最好是将枚举编码为Car::Color,还是只需要Color?(我假设前者更好,以防万一Color在全局命名空间中声明了另一个枚举.这样,至少,我们明确指出我们所指的枚举.)

c++ enums scope namespaces class

140
推荐指数
4
解决办法
23万
查看次数

如何获取对象的不合格(短)类名?

如何在PHP名称间隔环境中检查对象的类,而不指定完整的命名空间类.

例如,假设我有一个对象库/实体/合同/名称.

以下代码不起作用,因为get_class返回完整的命名空间类.

If(get_class($object) == 'Name') {
... do this ...
}
Run Code Online (Sandbox Code Playgroud)

namespace magic关键字返回当前命名空间,如果测试对象具有另一个命名空间,则该命名空间无效.

我可以简单地用命名空间指定完整的类名,但这似乎锁定了代码的结构.如果我想动态更改名称空间,也没什么用处.

任何人都可以想到一个有效的方法来做到这一点.我猜一个选项是正则表达式.

php namespaces class

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

如何在Python中创建命名空间包?

在Python中,命名空间包允许您在多个项目中传播Python代码.当您想要将相关库作为单独的下载发布时,这非常有用.例如,使用目录Package-1Package-2in PYTHONPATH,

Package-1/namespace/__init__.py
Package-1/namespace/module1/__init__.py
Package-2/namespace/__init__.py
Package-2/namespace/module2/__init__.py
Run Code Online (Sandbox Code Playgroud)

最终用户可以import namespace.module1import namespace.module2.

定义命名空间包的最佳方法是什么,因此多个Python产品可以在该命名空间中定义模块?

python namespaces package

132
推荐指数
3
解决办法
5万
查看次数

在类库中添加System.Web.Script引用

我目前正在将代码从app_code文件夹移动到类库.我用[System.Web.Script.Serialization.ScriptIgnore]属性标记了几个方法.我的类库无法看到此命名空间.我的添加引用对话框无法看到此命名空间.如何在类库中正确使用此标记?

这是错误: 找不到类型或命名空间名称'ScriptIgnoreAttribute'(您是否缺少using指令或程序集引用?)

asp.net class-library namespaces

123
推荐指数
2
解决办法
13万
查看次数

解决方案中的文件夹是否应与命名空间匹配?

解决方案中的文件夹是否应与命名空间匹配?

在我的一个团队项目中,我们有一个类库,项目中有许多子文件夹.

项目名称和命名空间:MyCompany.Project.Section.

在此项目中,有几个与命名空间部分匹配的文件夹:

  • Folder VehiclesMyCompany.Project.Section.Vehicles命名空间中有类
  • Folder ClothingMyCompany.Project.Section.Clothing命名空间中有类
  • 等等

在同一个项目中,是另一个流氓文件夹

  • Folder BusinessObjectsMyCompany.Project.Section命名空间中有类

有一些这样的情况,其中文件夹是为了"组织方便"而制作的.

我的问题是:标准是什么?在类库中,文件夹通常与命名空间结构匹配,还是混合包?

.net c# namespaces

122
推荐指数
6
解决办法
4万
查看次数

这是斯巴达,还是它?

以下是面试问题.我想出了一个解决方案,但我不确定它为什么会起作用.


题:

在不修改Sparta类的情况下,编写一些MakeItReturnFalse返回的代码false.

public class Sparta : Place
{
    public bool MakeItReturnFalse()
    {
        return this is Sparta;
    }
}
Run Code Online (Sandbox Code Playgroud)

我的解决方案:(SPOILER)

public class Place
{
public interface Sparta { }
}

但为什么SpartaMakeItReturnFalse()提到{namespace}.Place.Sparta而不是{namespace}.Sparta

c# inheritance types namespaces

121
推荐指数
2
解决办法
9448
查看次数

标签 统计

namespaces ×10

c++ ×4

c# ×2

class ×2

php ×2

.net ×1

asp.net ×1

class-library ×1

enums ×1

inheritance ×1

opcache ×1

opcode ×1

package ×1

printf ×1

python ×1

scope ×1

std ×1

string ×1

types ×1