friend 相关问题

在面向对象的编程中,friend指的是可以访问特定类的某些非公共方面的方法或类。

模板类的两个类型名的模板友元函数

我尝试使两个参数类型名的模板函数成为模板类的友元。但我无法设法使其链接。 考虑下面的例子。请注意,代码非常简单...

回答 1 投票 0

通过 using-directive 或 using-declaration 引入的名称可以用作友元声明的详细类型说明符吗?

为什么gcc、clang和msvc能成功编译以下代码? (神箭) 命名空间实现 { A 级; } // 命名空间实现 命名空间 API { 使用命名空间实现; } // 命名空间 API B级 { ...

回答 1 投票 0

C++ 中模板类的友元声明

#包括 类我的类{ 民众: 模板 朋友类 MyTemplateClass; }; int main() { 返回 0; } 上面提供的代码尝试声明

回答 1 投票 0

带有默认模板参数的友元函数模板

是否允许在友元声明中为模板参数提供默认值? A类{ 整数值; 民众: 模板朋友无效foo(); }; Visual Studio 2015 看起来...

回答 3 投票 0

为什么 Friendship 似乎可以通过 befriended 函数模板传递?

友谊不应该是传递性的。也就是说,我的朋友无法访问彼此的私人信息(除非他们也是朋友)。 但是,使用以下定义的函数模板...

回答 1 投票 0

C++ 中的内部类自动成为友元吗?

如果我在 C++ 中定义一个内部类,它会自动成为包含它的类的友元吗? 例如,这合法吗? 类外层{ 民众: 类内部{ 民众: void mutateOu...

回答 5 投票 0

重新声明显式默认的比较运算符使其未定义

在下面的程序中,struct A 有默认的友元相等比较运算符,再次重新声明它以获取函数的指针(&operator==): 结构体A { 朋友 constexpr b...

回答 1 投票 0

朋友无法使用命名空间访问私有成员

使用 MS Visual Studio 2019 重载运算符时出现以下错误<<: Severity Code Description Project File Line Suppression State Error C2248 'Instr...

回答 1 投票 0

命名空间内的类友元函数

我试图在命名空间之外定义一个类友元函数,如下所示: 命名空间A { 班级窗口 { 私人的: 整数a; 朋友 void f(窗口); }; } void f(A::window rhs) { 算了...

回答 3 投票 0

如何使 google-test 课程与我的课程成为朋友?

我听说可以让 google-test TestCase 类的朋友加入我的类,从而使测试能够访问我的私有/受保护的成员。 如何实现?

回答 5 投票 0

外部命名空间中带有非类型参数的友元函数模板不是友元

函数 make() 有非类型模板参数 N。它是在全局命名空间中声明和定义的。 类目标在命名空间 ns 中定义。它有一个私有构造函数。 我想要

回答 1 投票 0

如何将类模板声明为其他模板类的友元

我正在尝试实现一个类似元组的类。一切都运转良好。这是我的代码: 元组.hpp #pragma 一次 模板 元组类:私有元组 {...

回答 1 投票 0

访问受限的朋友班级

我想让 A 类成为 B 类的朋友。我想这样做,因为它们之间的交互非常频繁,并且 A 需要更改 B 类的内部结构(我不想使用 public 来公开)。但我想让苏...

回答 3 投票 0

使用可变参数模板指定友元类

我正在尝试使用可变参数模板来指定友元类。我尝试使用以下语法,但它不起作用。 模板 结构体A { 朋友参数...; }; 我尝试鳕鱼...

回答 2 投票 0

为什么允许显式特化友元函数?

作为一般规则,命名空间范围允许显式专业化。 下面的代码: 模板 B类{ 模板无效测试{}; 模板...

回答 1 投票 0

运算符 == 或 << when should i use it?

我觉得我对friend关键字的理解有点漏洞。 我有一个课程,演示。我在代码中将它用于两个变量,present1 和present2,并与 == 进行比较: 如果(公...

回答 5 投票 0

模板友元运算符重载必须先于同一运算符的成员函数重载吗?

有谁知道为什么会这样编译: 模板 Foo 类; 模板 bool 运算符==(const T& l, const Foo& r); 模板 类...

回答 1 投票 0

C++ 模板友元类不满足概念约束,因为它是不完整类型

#包括 #包括 模板 概念 is_buffer = 需要 (T t) { { t.pointer() } -> std::same_as; { t.capacity() } ->...

回答 2 投票 0

类模板内的友元函数

#包括 模板 类测试类 { 类型 num[大小]; 民众: testClass(std::initializer_list 列表) { 整数 i = 0; ...

回答 1 投票 0

clang bug?不明确的函数调用编译错误,但不存在歧义

在过去的9个小时里我一直在敲头。 我刚刚买了一台配备 M3 处理器 (ARM) 的新 MacBookPro,并使用 xcode-select install 安装了所有命令行工具,包括 clang。 叮当...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.